Table des matières
NPM
NPM est le gestionnaire de packetages de Node.js (Node.js Package Manager).
Installation mac (sans sudo)
- Install Node.js from https://nodejs.org/en/download/
- Update to the latest version of npm :
$ npm install npm -g
- Make a new folder for the npm global packages :
$ mkdir ~/.npm-packages
- Tell npm where to find/store them :
$ npm config set prefix ~/.npm-packages
Source : Node and npm without sudo
Initier NPM
Pour initialiser un package NPM, on fait simplement:
$ npm init
On répond à une foule de question qui créera le fichier package.json
.
Pour aller plus rapidement, on peut créer un fichier package.json
simple:
{ "name": "nom-du-projet", "version": "0.0.1" }
Avec le fichier package.json
on peut alors faire:
$ npm i -y
Installation de packetages
Pour installer un packetage avec NPM, il faut utiliser install
:
$ npm install <nom_du_packetage>
Pour installer un packetage qui sera accessible sur tout le système (globalement ou globally), on utilise le flag -g
:
$ npm install -g <nom_du_packetage>
Suppression de packetages
$ npm uninstall <nom_du_packetage>
Mise à jour
Pour mettre à jour un paquetage en particulier:
$ npm update <nom_du_packetage>
On peut vérifier les packetages installés globalement qui ont besoin d'une mise à jour:
$ npm outdated -g --depth=0
Ensuite, on peut soit mettre à jour un paquetage globale en particulier (c'est vraiment install
qui est utilisé):
$ npm install -g <nom_du_packetage>
Ou bien tous les paquetges globaux:
$ npm update -g
Source: Updating global packages
Outils de mise à jour de dépendances
Gérer les dépendances avec package.json
Création
$ npm init
Ceci va demander quelques question et créer le fichier package.json
.
Installation
Ensuite, une fois que le fichier package.json
est présent, simplement se rendre dans le répertoire où il se trouve et faire :
$ npm install
Ceci va installer les packetages indiqués dans le fichier package.json
. À chaque installation d'un package qu'on veut ajouter dans package.json
, il faut utiliser l'option --save
.
$ npm install <nom_du_package> --save
Même principe pour la mise à jour :
$ npm update
Mise à jour du fichier package.json
Pour installer des packages et qu'ils soient mémorisés dans le fichier package.json
, il faut utiliser le flag --save
:
$ npm install <nom_du_packetage> --save
Publication
S'authentifier:
$ npm adduser
Créer un fichier .npmignore
, même vide, sinon .gitignore
sera pris en compte, ce qui peut ignorer des fichiers compilés/transpilés.
Ayant un package scoped (@scopename/packagename
), on peut publier publiquement:
$ npm publish --access public
NPM Packages
- Request : Utile pour faire des requêtes pour des services REST par exemple.
Proxy / Cache
$ npm config get registry $ npm config set registry "http://registry.npmjs.org/" $ npm --proxy https://username:password@cacheaddress.com install packagename
HTTPS
$ npm config set https-proxy http://proxy.company.com:8080
C'est vraiment en http
(non https
) que le schemas est1).
Cache
$ npm cache verify $ npm cache clear
npm config set https-proxy http://proxy.company.com:8080
Ressources
Outils
Yarn
Article qui décrit bien Yarn : Yarn: A new package manager for JavaScript.
Installation de Yarn officielle : Installation.
Équivalences avec npm
npm | yarn | Description |
---|---|---|
npm install | yarn | Lit packages.json et installe les modules. |
npm install [package] –save | yarn add [package] | |
npm install [package] –save-dev | yarn add [package] –dev |
Global Packages
- bw → @bitwarden/cli
- chokidar → chokidar-cli
- code-push → code-push-cli
- concurrent → concurrently
- concurrently → concurrently
- gulp → gulp
- hint → hint
- hs → http-server
- http-server → http-server
- jest → jest
- jrlo → jrlo
- json-diff → json-diff
- ng → @angular/cli
- ngd → @compodoc/ngd-cli
- nodemon → nodemon
- source-map-explorer → source-map-explorer
- tb → taskbook
- terminalizer → terminalizer
- tldr → tldr
- ts-node → ts-node
- tsc → typescript
- tslint → tslint
- yarn → yarn