npm install

npm install

Maintenant que vous êtes prêt à coder votre projet node, il vous faut installer des dépendances. Bon, c'est pas obligé, mais ça va être un peu difficile de réinventer la roue par vous même. Et il existe tellement d'outils (50 000 aujourd'hui) qu'il serait dommage de s'en passer. Ces outils, ça peut être simplement la fonction foreach permettant d'itérer autour d'un tableau ou d'un objet proprement et sans utiliser for, ça peut aussi être une API permettant d'accéder à une base de donnée PostGreSQL, mongodb ou neo4j, ça peut encore être un outil de tests unitaires vous permettant de développer en TDD (Tests Driven Developement).

C'est justement ce que nous allons utiliser dans ce tuto : foreach et nodeunit. Le premier est à utiliser dans le projet en lui même, et le second, uniquement dans la phase de développement.

npm install

Nous allons tout d'abord installer foreach. Cet outil implémente une fonction each(objet, function(v, k)) qui permet d'itérer sur un objet proprement. Très utile dans toutes les parties du projet. Nous allons l'installer :

npm install foreach

Un dossier nodemodules_ apparait alors et il contient un dossier foreach.

Vous pouvez dès à présent utiliser ce module dans votre code javascript en l'appellant simplement avec require :

var each = require('foreach');

npm install --save

Très bien. Maintenant, que se passera-t-il quand un collaborateur reprendra votre dépôt ? Sauf si vous avez oublié d'ignorer le dossier nodemodules lorsque vous avez commité votre travail (pensez à ajouter "nodemodule" et "*/nodemodules" dans votre fichier _.gitignore), il ne saura pas quel module installer. À vous de renseigner le package.json de votre projet. Nous allons cette fois ajouter l'option --save :

npm install foreach --save

Le module n'est pas réinstallé, puisqu'il est déjà présent. Cependant, il l'aurait été le cas écheant. Par contre, ce qui nous intéresse, c'est que le fichier package.json a été modifié et contient dorénavant les lignes suivantes :

"dependencies": {
    "foreach": "~2.0.4"
}

Ainsi, il ne suffira plus qu'à taper :

npm install

à la racine de votre projet pour que foreach et tous les autres modules que vous ajouterez au fil de votre développement soient installés ou mis à jours automatiquement.

npm install --save-dev

Nous allons maintenant installer nodeunit. C'est un module permettant de lancer des tests unitaires de non régression. Primordial pendant la phase de développement, il est par contre totalement inutile en production. Nous allons utiliser l'option --save-dev pour le sauvegarder uniquement pour le développement :

npm install nodeunit --save-dev

Le fichier package.json est modifié de la sorte :

"devDependencies": {
    "nodeunit": "~0.8.2"
}

Lorsque vous lancerez npm install, ce package ne sera installé qu'en phase de développement.

RTFM

Il existe encore tout plein d'options pour npm install, et je vous invite à lire la doc pour en prendre connaissance à l'aide d'un bon vieux :

npm help install

Hadrien

Hi, I'm a french Javascript Lead Developer, Web Architect from Toulouse, France. I've worked for 12 years for many projects with YUI, AngularJS, Aurelia.io and now React and React native.

Toulouse, France https://hadrien.eu