Lección 10. NPM.
NPM (Node Package Manager) es el gestor de paquetes de Node.js. Sirve para instalar, gestionar y compartir bibliotecas y herramientas de JavaScript.
Se incluye automáticamente cuando instalas Node.js.
Página de NPM:
También para verificar la versión de gestor de paquetes NPM puedes ejecutar:
npm --versionNota: Esto devolverá el numero de versión de NPM instalado dentro del equipo.
Inicialización de NPM._
Para iniciar y crear un proyecto de NPM, ejecutamos el comando:
npm initAl ejecutar este comando, se nos pediran algunos datos claves de nuestro proyecto a crear, los cuales son:
package name: Representa el nombre de nuestro proyecto a crear.
version: Numero de version de nuestro proyecto a crear (por default nos coloca la version 1.0.0).
description: Permite colocar una breve descripcion del proyecto.
entry point: Punto de entrada del proyecto, el cual es el archivo que se ejecuta al levantar el proyecto.
test command: Comandos o archivo para el testeo del proyecto, (podemos dejarlo en blanco).
git repository: Enlace de repositorio remoto (github) del proyecto.
keywords: Palabras clave para describir nuestro proyecto.
author: Nombre o seudonimo del responsable o los responsables del proyecto.
license: Licencias a utilizar en el proyecto (Podemos dejarla en blanco).
Nota: Al terminar de configurarse, podremos visualizar un JSON con nuestras configuraciones, el cual también será guardado en el directorio de nuestro proyecto dentro de un archivo llamado package.json.
Si queremos automatizar todo este proceso de configuración, también podemos ejecutar el comando:
npm init -yNota: El comando anterior omite todas las preguntas y crea el archivo vacío, el cual podrá configurarse después.
Instalar dependencias de NPM en proyecto._
Si deseamos instalar una dependencia, para utilizarla en nuestro proyecto (una vez inicializado con el npm init), ahora bastará con ejecutar simples comandos como:
npm install <nombre-dependencia>Hagamos un ejemplo de una instalacion, para ello, intalaremos la dependencia llamada:
Picocolors
Para mas información:
Página de información de Picocolors en NPM.
Repositorio de Picocolors en Github.
El cual utilizaremos para nuestro archivo de código realizado en la clase anterior Clase 07:
Para ello, después de leer la documentación de la dependencia:
La pagina de NPM nos da el comando de:
npm i picocolorsNota: Podemos obtener los comandos de instalación de las dependencias buscándolas en la pagina oficial de NPM.
Al ejecutarse e instalarse, debería mostrarse algo similar a:
> npm i picocolors
added 1 package, and audited 2 packages in 3s
found 0 vulnerabilitiesY ahora, dentro de nuestro package.json deberíamos visualizar un apartado similar a:
"dependencies": {
"picocolors": "^1.1.1"
}Lo que significaría que picocolors en su versión 1.1.1 ha sido instalado y listo para utilizarse dentro de nuestro proyecto.
Nota: Si somos observadores, podremos visualizar ahora en el directorio de nuestro proyecto, un nuevo directorio llamado: node_modules, el cual contiene dentro, otro directorio llamado picocolors; Esto es como si hubiéramos descargado la librería completa de nuestra dependencia, lista para utilizarse dentro de nuestro proyecto desde cualquier lugar.
Cuando instalamos dependencias, podemos descargar al mismo tiempo, si esta necesita alguna dependencia para funcionar, se descargará también, por lo que, al hacerlo, podrían crearse no solamente 1 directorio, sino varios, procedentes de las dependencias necesarias, ocasionando de esta manera, un evento en cascada.
Desinstalar dependencias de NPM en proyecto._
Para realizar esta acción, es tan simple como ejecutar el comando:
npm uninstall <nombre-dependencia>Nota: Desinstalar una dependencia, también desinstalará las dependencias útiles para el funcionamiento de dicha, por lo que no es necesario preocuparse por ello.
Importar dependencia en proyecto._
Para importar nuestra dependencia en nuestro proyecto, basta con:
Ir a nuestro archivo a utilizar y colocar la importación:
const pc = require("picocolors");O si es un .mjs:
import pc from "picocolors"Nota: Este código también se encuentra en la documentación del proyecto, en NPM o Github.
De esta manera, podremos utilizar ya los métodos proporcionados dentro del archivo de nuestro código.
Veamos algunos cambios dentro de nuestro código:
console.error(pc.yellow(`No se pudo leer el directorio: ${folder}`));Donde, el mensaje en consola, se mostrará en texto color yellow.
E incluso jugar aun más profesional, con bg y el color:
fileInfo.forEach(fileInfo => console.log(
pc.bgGreen(
pc.blue(fileInfo)
)
));Donde, se imprime el texto con un background color green y el texto de blue.
Nota: Este es un ejemplo simple de el uso de una dependencia en Node.js con ayuda de NPM.