Que es NPM en NodeJS

NPM es el gestor de paquetes por defecto de NodeJS. Las siglas NPM significan "Node Package Manager", aunque también es conocido por el nombre de "npmjs.com", ya que es el repositorio de paquetes más grande del mundo para JavaScript. NPM se instala automáticamente cuando instalas NodeJS en tu servidor u ordenador, por lo que no necesitas instalarlo por separado. Básicamente, es la herramienta que te permite instalar, gestionar, actualizar y desinstalar paquetes o módulos de Node.js de simple y rápida.

En nuestro hosting para NodeJS podrás utilizar NPM para gestionar todas las dependencias y paquetería de tu aplicación desarrollada en Node y desplegada en nuestros servidores.

Te preguntarás para qué se utiliza NPM en la práctica. Pues NPM te permite gestionar las dependencias de tu proyecto de NodeJS y si por ejemplo, si estás desarrollando una aplicación web y necesitas usar librerías como Express, React o cualquier otra librería disponible en el registro de NPM, simplemente puedes instalarlas con un comando en tu servidor con NodeJS.

Cuando trabajas con aplicaciones como N8N, que funciona sobre NodeJS, si vas a instalar la aplicación nativa, es decir, sin utilizar Docker, NPM es fundamental para la instalación y gestión de la aplicación y sus dependencias.

A continuación te dejo algunos comandos básicos de NPM que podrás utilizar en cualquier servidor con NodeJS, como por ejemplo en nuestros hosting NodeJS.

Para instalar un paquete específico en tu proyecto NodeJS, evidentemente debes sustituir [nombre-paquete] por el paquete que necesites instalar:

npm install [nombre-paquete]

También puedes instalar una versión específica de un paquete, simplemente indicando la versión con un @:

npm install [nombre-paquete]@[versión]

Si quieres instalar un paquete específico de forma global en el sistema y no solo para tu usuario, debes usar el siguiente comando:

npm install -g [nombre-paquete] 

En cambio, si quieres desinstalar un paquete de tu proyecto NodeJS, debes utilizar el siguiente comando:

npm uninstall [nombre-paquete]

Si quieres actualizar todos los paquetes del proyecto NodeJS, puedes utilizar el siguiente comando:

npm update 

Sin embargo, si quieres actualizar un paquete específico de tu proyecto NodeJS, puedes utilizar este comando:

npm update  [nombre-paquete]

Si quieres crear un archivo package.json para inicializar un proyecto NodeJS, simplemente tienes que ejecutar el siguiente comando:

npm init

Para eliminar dependencias o paquetes no utilizados en NodeJS, podemos utilizar el siguiente comando:

npm prune

Si quieres ver información de un paquete concreto desde NPM, puedes utilizar también NPM con el siguiente comando:

npm info [nombre-paquete]

Si quieres revisar vulnerabilidades de seguridad en paquetes instalados en NPM, simplemente tienes que ejecutar el siguiente comando:

npm audit

Y si quieres ver todos los paquetes desactualizados que tienes instalados en NodeJS, puedes utilizar el siguiente comando:

npm outdated

Todos estos comandos te serán útiles en nuestro hosting para NodeJS, ya que te permitirán utilizar y gestionar el intérprete de NodeJS de tu hosting. Existen otros muchos comandos que son útiles para NPM, pero el objetivo de este artículo no es listar comandos de NPM, sino explicarte exactamente lo que es NPM y para qué sirve NPM con ejemplos prácticos y reales.

Vamos a poner algún ejemplo práctico real. Por ejemplo, cuando quieres instalar N8N en un servidor VPS, si no utilizas Docker, tienes que utilizar NPM para instalarlo. Tendrías que utilizar el siguiente comando:

npm install n8n -g

Una de las características más importantes de NPM es que gestiona automáticamente las dependencias de los paquetes.
Cuando instalas un paquete, NPM también instala todas las librerías que ese paquete necesita para funcionar correctamente.

Esta gestión de dependencias está definida en el archivo package.json, que contiene toda la información del proyecto, incluyendo las dependencias necesarias para que funcione.

Por otro lado, el repositorio npmjs.com que ya hemos mencionado anteriormente, es donde se alojan todos los paquetes disponibles para NPM. De hecho, es el repositorio de software más grande del mundo, con millones de paquetes disponibles para descargar.
En npmjs.com puedes encontrar desde librerías básicas hasta aplicaciones completas como N8N, que pueden instalarse directamente en tu servidor NodeJS.

Debes tener en cuenta que sin NPM, trabajar con NodeJS sería extremadamente complicado, ya que tendrías que descargar manualmente cada librería, gestionar las versiones y lo que aún es peor: las dependencias. NPM automatiza todo este proceso y hace que el desarrollo con NodeJS sea mucho más eficiente y cómodo.

Álvaro Fontela

Álvaro Fontela

Consultor WordPress, además de CEO y cofundador de Raiola Networks. Autor del libro "Curso Práctico de WordPress" y speaker en congresos de marketing digital.

Autor