Incorporación de paquetes al proyecto de Node.js

Completado

Node.js tiene paquetes integrados para tareas como la administración de archivos y el control HTTP. Pero también hay una amplia gama de paquetes de terceros que se ofrecen en el registro NPM.

Cuándo y cómo seleccionar un paquete npm

Como nuevo desarrollador de Tailwind Traders, debe agregar funcionalidad a un proyecto. Podría escribir el código usted mismo, pero decide usar un paquete existente. Esta decisión de desarrollo es un escenario común.

¿Cuándo debe usar un paquete existente? Estos son algunos de factores que se deben tener en cuenta:

  • Calidad: Para tareas como la seguridad, el uso de paquetes bien establecidos garantiza que sigue los procedimientos recomendados y controla los casos perimetrales.
  • Eficacia: La escritura de su propio código lleva tiempo. El uso de paquetes existentes puede ahorrar mucho esfuerzo.
  • Mantenimiento: Las bibliotecas necesitan actualizaciones y correcciones de errores. A menudo es más eficaz permitir que un equipo de código abierto lo controle.

Los desarrolladores pueden encontrar y descargar paquetes de varios orígenes, como:

  • Registros: Los registros son colecciones de paquetes, como el registro npm. También puede hospedar su propio registro.
  • Repositorios: Puede instalar paquetes directamente desde una dirección URL de GitHub.
  • Archivos: Los paquetes se pueden instalar desde una carpeta local o un archivo comprimido, lo que resulta útil para probar sus propios paquetes.
  • Directorios: También puede instalar directamente desde un directorio.

Una vez que seleccione un paquete, compruebe sus dependencias para tener en cuenta los siguientes factores:

  • Tamaño: Más dependencias significan una superficie mayor. El tamaño de la superficie es importante si tiene limitaciones de ancho de banda o hardware. Recuerde que la instalación de un paquete también instala sus dependencias. Esto puede dar lugar a una carpeta node_modules grande.
  • Popularidad: La popularidad de un paquete puede indicar su calidad.
  • Licencias: Si planea vender el software, asegúrese de que todas las licencias del paquete de dependencias permiten reutilizarlas y revenderlas.
  • Mantenimiento activo: Evite las dependencias que están en desuso o que rara vez se actualizan.

Para obtener más información sobre un paquete, visite su página de paquetes en NPM y su repositorio de GitHub. También puede usar el comando npm: npm view <package name>.

Procedimiento para instalar un paquete

Para instalar un paquete, use la CLI de npm instalada con Node.js. Puede agregar un paquete al proyecto Node.js con el comando npm install en el terminal.

npm install <name of package>

Al ejecutar el comando install, la herramienta de línea de comandos se conecta a un registro global, captura el código y lo coloca en una carpeta node_modules en la raíz del proyecto.

Algunos modificadores comunes para el comando install incluyen:

  • En el caso de los paquetes de solo desarrollo, use --save-dev. Este modificador guarda en la propiedad devDependencies de package.json. Estas dependencias suelen ser herramientas de formato, lint, compilación, transpilación y pruebas.
  • En el caso de los paquetes de solo producción, use --production. Este modificador excluye los paquetes de solo desarrollo.
  • Para las herramientas disponibles globalmente, use -g. Las herramientas de línea de comandos a menudo se instalan globalmente en lugar de importarlas en proyectos. Las dependencias globales se instalan en un directorio de todo el sistema, no en el nivel de instrucción node_modules. Sin embargo, los paquetes globales pueden desordenar el sistema. El comando npx lo resuelve instalando temporalmente paquetes. Use npx <name> para capturar un paquete, ejecutarlo y, a continuación, quitarlo.

Después de la instalación, el directorio del proyecto tiene el siguiente aspecto:

package.json
node_modules/
  <name of dependency>/
    <files included in the dependency>
src
  index.js

Comandos de la CLI de npm

La herramienta de línea de comandos de npm tiene bastantes comandos para ayudarle con tareas como instalar paquetes, crear paquetes e inicializar proyectos de Node.js.

Los comandos de NPM se dividen en categorías:

  • Administración de dependencias: Comandos para instalar, actualizar y quitar paquetes.
  • Ejecución de scripts: Comandos para administrar flujos de desarrollo, como pruebas y compilación de código.
  • Configuración del entorno: Comandos para configurar rutas de instalación y orígenes de paquetes.
  • Creación y publicación de paquetes: Comandos para la creación y publicación de paquetes.

Si quiere obtener una lista detallada de todos los comandos, escriba el comando siguiente en el terminal:

npm --help

Verificar instalación

Para ver lo que hay en la carpeta package.json, use npm list. El comando npm list enumera todos los paquetes del directorio node_modules que se instalaron. Cada paquete instalado instaló todas sus propias dependencias.

Dado que el comando list puede dar lugar a una larga lista, lo que dificulta su comprensión, puede enumerar paquetes en diferentes profundidades con el comando list. En la profundidad 0, el comando muestra el mismo contenido que tiene en la sección dependencies del archivo package.json.

npm list --depth=<depth>

Si ha instalado el paquete Jest, npm list --depth=0 producirá una salida similar a la siguiente:

├── jest@26.0.1

Limpieza de las dependencias

Si ya no necesita un paquete, quítelo. La eliminación de una dependencia mantiene el proyecto limpio y ahorra espacio. Esta limpieza es especialmente importante para las aplicaciones de página única (SPA), como Angular, React o Vue. Estas aplicaciones agrupan y comprimen el código en un archivo servido al explorador. Cuanto mayor sea el archivo, más tiempo tardará en cargarse, lo que puede disuadir a los usuarios.

Hay dos maneras de limpiar las dependencias que ya no se necesitan:

  • Desinstalar: para desinstalar un paquete, ejecute npm uninstall <name of dependency>. Este comando quita el paquete del archivo de manifiesto de package.json y de la carpeta node_modules.
  • Eliminación: Use npm prune para quitar todas las dependencias no incluidas en la lista node_modules. La eliminación es útil cuando desea quitar varias dependencias sin ejecutar la desinstalación de cada una. Para eliminar:
    1. Elimine las entradas de dependencias o devDependencies en package.json.
    2. run npm prune.