[Tuto] Node.js et NPM

Qu’est-ce que NPM ?

npm-logoNPM ou Node Packaged Modules est un gestionnaire de module intégré à Node.js. Il permet d’installer des modules ainsi que ces dépendances, à l’image de apt-get sous Linux.

L’une des grandes force de Node.js est ses nombreux modules disponible sur le dépôt officiel (à l’heure ou j’écris ses lignes NPM recense 66 351 packages).

Rechercher un module avec NPM

Si vous cherchez un module vous pouvez vous rendre directement sur le site officiel de NPM ou effectuer une recherche avec NPM.

NPM est un outil installé avec Node.js qui s’utilise en ligne de commande. Ouvrez une console est tapé la commande npm search suivie de votre recherche, exemple :

npm search mysql

Cela va chercher tous les modules en rapport avec MySQL.

Installer un module avec NPM

Pour installer un module, commencez par vous placer à la racine de votre projet Node.js et tapez la commande npm install <nom_du_module> :

npm install express

Le module ainsi que toutes ses dépendances seront installé localement pour votre projet dans un dossier node_modules.

Vous pouvez maintenant utiliser le module fraichement installer avec un require :

app.js :
var express = require('express');
var app = express();

app.get('/', function(req, res){
  res.send('hello world');
});

app.listen(8080);

Mettre à jour vos modules

La mise à jour de vos modules ce fait facilement avec la commande npm update.

npm update

NPM va chercher sur le dépôt officiel s’il y a de nouvelles versions, les installer en locale pour votre projet et supprimer l’ancienne version.

Gérer les versions des modules avec package.json

Vous pouvez définir votre application (nom, version, auteur …) avec ses dépendances dans un fichier JSON nommé package.json.
Voici un exemple :

package.json :
{
    "name": "my-app",
    "version": "0.1.0",
    "author": "Damien",
    "dependencies": {
        "express": "3.5.x"
    }
}

Pour voir toutes les propriétés que peut prendre package.json, je vous conseille de donner un coup d’oeil sur ce cheatsheet très complet.

Si vous voulez en savoir plus sur la numérotation des versions, vous pouvez aller voir le site semver officiel.

Conclusion

Nous venons de voir le gestionnaire de module de Node.js, NPM. Nous avons vu qu’il nous permet d’installer et mettre à jour facilement de nouveaux modules. Ainsi que gérés les dépendances de notre application avec le package.json.

Laisser un commentaire