N02 — Exercices Modules & NPM
10 exercices progressifs · Valide en temps réel · Solutions incluses
path.join — Joindre des chemins
Importez path et utilisez path.join() pour construire un chemin de fichier. Affichez aussi path.basename() ou path.extname().
Module os — Informations système
Importez os et affichez le hostname, la plateforme ou la RAM disponible avec les méthodes du module.
crypto.createHash — Hash SHA-256
Importez crypto et utilisez createHash('sha256') pour hasher une chaîne de caractères.
module.exports avec plusieurs fonctions
Créez un module qui exporte au moins 3 fonctions utilitaires via module.exports = { ... }. Exemple : calculs mathématiques, validations, etc.
Syntaxe ES Modules (import/export)
Écrivez du code utilisant la syntaxe ESM : export function, export const ou export default. Montrez aussi comment l'importer.
package.json avec scripts npm
Écrivez un package.json avec une section "scripts" incluant au moins "start".
devDependencies avec nodemon
Écrivez un package.json avec nodemon dans les devDependencies. Rappel: npm i -D nodemon.
package.json avec la section engines
Ajoutez la section "engines" dans un package.json pour spécifier la version minimale de Node.js requise.
EventEmitter — .on() et .emit()
Importez EventEmitter depuis events, créez une instance, enregistrez un listener avec .on() et déclenchez l'événement avec .emit().
Module réutilisable complet
Défi final : créez un module utilitaire complet (validator, formatter, helper...) avec plusieurs fonctions exportées via module.exports. Code substantiel requis (+ de 100 caractères).