Introducción a npm
Node Package Manager
Daniel Aristizabal Romero / @cronopio2
¿Qué es npm?
Entre algunas cosas:
- Administrador de paquetes de Node.js
- Desde Node.js 0.0.6 se instala cuando instalas Node.js
- Herramienta de linea de comandos
- Repositorio público y abierto de modulos "third-party"
- Crecimiento exponencial desde sus inicios
- Total Modulos (Ayer): 135,209
npm help
Instalar modulos desde cualquier medio
Existe una variedad de formas de indicar que paquetes instalar
- Un directorio que contiene un archivo
package.json
- Un archivo
.tar.gz
como en el punto 1
- Una URL que responda con el punto 2
- Un
nombre@version
publicado en el registro.
- Un
nombre@tag
que apunte al punto 4
- Un
nombre
cuya ultima version será instalada.
- Una git-url que, cuando clonado resulte en el punto 1
npm init
Dependencias
npm install --save
npm install --save-dev
- < 0.1.0
- <= 1.2.7
- > 0.1.1
- >= 0.2.3
- = 0.2.4
- 0.1 - 0.2
- <1.0.0 || >=2.3.1 <2.4.5 || >=2.5.2 <3.0.0
- *
- 1.2
- 1.x
- ~1.2.3
- ^2.3.4
OH Wait!
Olvide mencionar que npm está escrito en Node.js
Comparte tus modulos!
Comparte tu trabajo con los demás.
npm adduser
: Para crear una cuenta en el registro npm.
npm login
: Usa las credenciales de tu cuenta para las peticiones de npm.
npm whoami
: Mostrar el usuario de las credenciales definidas.
npm publish
: Sube el modulo al registro y cualquiera podrá instalarlo.
npm start
npm run-script compile
npm config
- npm config list | Muestra la actual configuración de npm.
- npm config set :indice: :valor: | Define un valor para el indice de configuración.
- npm config get :indice: | Muestra el valor actual para ese indice de configuración.
- npm delete :indice: | Elimina ese indice de la configuración.
Algunos indices usados frecuentemente
- loglevel que puede ser "silent", "error", "warn", "http", "info", "verbose" o "silly"
- prefix directorio donde se instalaran los paquetes globales.
- registry URL del registro (en caso de tener uno privado)
npm config set loglevel info
Más información en la documentación de npm.
npm link