Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

Sorry, you do not have permission to ask a question, You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please type your username.

Please type your E-Mail.

Please choose an appropriate title for the post.

Please choose the appropriate section so your post can be easily searched.

Please choose suitable Keywords Ex: post, video.

Browse

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

Querify Question Shop: Explore Expert Solutions and Unique Q&A Merchandise

Querify Question Shop: Explore Expert Solutions and Unique Q&A Merchandise Logo Querify Question Shop: Explore Expert Solutions and Unique Q&A Merchandise Logo

Querify Question Shop: Explore Expert Solutions and Unique Q&A Merchandise Navigation

  • Home
  • About Us
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • About Us
  • Contact Us
Home/ Questions/Q 2532

Querify Question Shop: Explore Expert Solutions and Unique Q&A Merchandise Latest Questions

Author
  • 61k
Author
Asked: November 26, 20242024-11-26T06:16:07+00:00 2024-11-26T06:16:07+00:00

Comandos básicos de NPM

  • 61k

Si estás empezando a trabajar con JavaScript, probablemente en algún momento tendrás que utilizar Node.js y NPM. La mayoría de los proyectos de JavaScript utilizan NPM para instalar dependencias y paquetes de terceros, y para ejecutar scripts de desarrollo.

En este artículo, vamos a ver los comandos básicos de NPM, y algunos shortcuts que te pueden ayudar a ahorrar tiempo.

¿Qué es NPM?

El Gestor de paquetes de Node o Node Package Manager (NPM) fue lanzado en 2010 como un sistema de administración y distribución de paquetes para Node.js a través de internet y accesible localmente utilizando la línea de comandos del sistema. Por defecto NPM se instala junto con Node.js. En caso de no tener instalado Node.js puedes consultar el siguiente artículo: Instalar Node.js en Windows.

En la web de NPM se pueden encontrar paquetes para propósitos específicos, además de que se pueden descargar, instalar y actualizar paquetes de forma sencilla.

¿Cómo usar NPM?

Para usar NPM, debemos abrir una terminal y ejecutar el comando npm seguido de la acción que queramos realizar. Por ejemplo, para instalar un paquete, ejecutamos el comando npm install seguido del nombre del paquete que queremos instalar. Por ejemplo, para instalar el paquete express ejecutamos el siguiente comando:

npm install express 
Enter fullscreen mode Exit fullscreen mode

Al ejecutar este comando se creará una nueva carpeta llamada node_modules en la carpeta donde se ejecutó el comando. Dentro de esta carpeta se instalará el paquete express y todas sus dependencias.

Paquetes globales y locales

Los paquetes que se instalan con NPM pueden ser globales o locales.

  • Paquetes locales: Son paquetes que se instalan dentro de la carpeta en la cual se ejecuta el comando npm install, específicamente en la carpeta node_modules. Estos paquetes solo están disponibles para el proyecto en el que se instalaron.
  • Paquetes globales: Son paquetes que se instalan fuera de la carpeta en la cual se ejecuta el comando npm install -g. Por lo general este tipo de paquetes se pueden ejecutar desde la linea de comandos y son reutilizables en cualquier proyecto.

package.json y package-lock.json

Cuando instalamos un paquete con NPM, se crea un archivo llamado package.json en la carpeta donde se ejecutó el comando. Contiene información sobre el proyecto, como el nombre, la versión, las dependencias, los scripts, etc. Este archivo es muy importante, ya que es el que se utiliza para instalar las dependencias de un proyecto, así como los scripts que se ejecutan en el proyecto.

Por otra parte, el archivo package-lock.json es un archivo generado automáticamente por NPM que contiene información detallada sobre las dependencias del proyecto y sus versiones en específico y se puede observar a manera de árbol.

La diferencia principal entre package.json y package-lock.json es que el primero se utiliza para definir las propiedades y dependencias del proyecto, mientras que el segundo se utiliza para almacenar información detallada sobre las versiones exactas de las dependencias y sus sub-dependencias que se instalaron en el proyecto, lo que ayuda a garantizar que el proyecto se ejecute de la misma manera en diferentes entornos.

Dependencias del proyecto y dependencias de desarrollo

Al utilizar Node.js, las dependencias de un proyecto se dividen en dos tipos:

  • Dependencias del proyecto: Son paquetes que son necesarios para que el proyecto funcione correctamente. Por ejemplo, si se está desarrollando un servidor web, se debe instalar el paquete express para poder crear un servidor web. Estos se registran en la sección dependencies del archivo package.json.

  • Dependencias de desarrollo: Son paquetes que son necesarios para el desarrollo del proyecto, pero no son necesarios para que el proyecto funcione correctamente en un ambiente de producción. Por ejemplo, si se instala nodemon con el comando npm install -D nodemon, para reiniciar el servidor cada vez que se guardan cambios en el código. Estos se registran en la sección devDependencies del archivo package.json.

Instalar paquetes por versión

Cuando instalamos un paquete con NPM, por defecto se instala la última versión disponible. Sin embargo, podemos instalar una versión específica de un paquete utilizando el comando npm install seguido del nombre del paquete y la versión que queremos instalar. La versión del paquete es declarada en el archivo package.json y tiene la siguiente estructura:

"dependencies":  {     "express": "^4.17.1" } 
Enter fullscreen mode Exit fullscreen mode

  • Para instalar la ultima versión de un paquete podemos ejecutar los siguientes comandos:
npm i express npm i express@latest 
Enter fullscreen mode Exit fullscreen mode

  • Si se desea instalar una versión específica de un paquete, se debe utilizar el símbolo @ seguido de la versión que queremos instalar.
npm i express@4.18.1 
Enter fullscreen mode Exit fullscreen mode

  • Si se desea instalar la última versión de un paquete, pero que sea menor a la versión especificada, se debe utilizar el símbolo ~ seguido de la versión que queremos instalar.
npm i express@~4.18.1 
Enter fullscreen mode Exit fullscreen mode

  • Si se desea instalar la última versión de un paquete, pero que sea mayor a la versión especificada, se debe utilizar el símbolo ^ seguido de la versión que queremos instalar.
npm i express@^4.18.1 
Enter fullscreen mode Exit fullscreen mode

Desinstalar paquetes

Para desinstalar un paquete, se debe ejecutar el comando npm uninstall seguido del nombre del paquete que queremos desinstalar.

npm uninstall <nombre_paquete> 
Enter fullscreen mode Exit fullscreen mode

Por ejemplo, para desinstalar el paquete express ejecutamos el siguiente comando:

npm uninstall express 
Enter fullscreen mode Exit fullscreen mode

Actualizar paquetes

En ocasiones es necesario actualizar un determinado paquete una vez que el proyecto ya ha sido creado. Para actualizar todos los paquetes de un proyecto, se debe ejecutar el comando npm update sin especificar el nombre del paquete.

npm update 
Enter fullscreen mode Exit fullscreen mode

En caso de solo requerir actualizar un paquete, se debe ejecutar el comando npm update seguido del nombre del paquete que queremos actualizar.

npm update <nombre_paquete> 
Enter fullscreen mode Exit fullscreen mode

Por ejemplo, para actualizar el paquete express ejecutamos el siguiente comando:

npm update express 
Enter fullscreen mode Exit fullscreen mode

Listar paquetes

Para listar todos los paquetes instalados en un proyecto, se debe ejecutar el comando npm list.

npm list 
Enter fullscreen mode Exit fullscreen mode

Auditar paquetes

Es normal que dentro de todas las dependencias de un proyecto algunas de ellas tengan vulnerabilidades. Para auditar las dependencias de un proyecto, se debe ejecutar el comando npm audit.

npm audit 
Enter fullscreen mode Exit fullscreen mode

Este comando escanea las dependencias del proyecto y muestra una lista de vulnerabilidades encontradas. Para solucionar las vulnerabilidades encontradas, se debe ejecutar el comando:

npm audit fix 
Enter fullscreen mode Exit fullscreen mode

De esta manera, se actualizarán las dependencias que tengan vulnerabilidades. Para ver un informe detallado de las vulnerabilidades encontradas, se debe ejecutar el comando:

npm audit fix --dry-run 
Enter fullscreen mode Exit fullscreen mode

Remover paquetes duplicados

Conforme aumenta el tamaño de un proyecto, el directorio node_modules puede llegar a ser muy grande. E incluso, puede llegar a contener paquetes duplicados. Para eliminar los paquetes duplicados, se debe ejecutar el siguiente comando:

npm dedupe 
Enter fullscreen mode Exit fullscreen mode

Este comando realiza una busqueda dentro del árbol de dependencias y busca la manera en la que se pueden eliminar los paquetes duplicados y compartirlos entre las dependencias, de esta manera se reduce el tamaño del directorio node_modules y la redundancia de los paquetes.

Al ser un árbol de dependencias las ramas son en su mayoria independientes, el siguiente comando intenta reorganizar esas ramas para identificar los paquetes innecesarios y eliminarlos.

npm prune 
Enter fullscreen mode Exit fullscreen mode

Publicar paquetes

Si se desea publicar un paquete en NPM, se debe crear una cuenta en la página de NPM. Una vez creada la cuenta, se debe ejecutar el comando npm login para iniciar sesión en NPM.

npm login 
Enter fullscreen mode Exit fullscreen mode

Luego de iniciar sesión, se debe ejecutar el comando npm publish para publicar el paquete.

npm publish 
Enter fullscreen mode Exit fullscreen mode

Al ejecutar este comando el paquete se publicará en NPM y estará disponible para ser instalado por otros desarrolladores. Es importante mencionar que se debe tener en consideración que el nombre del paquete debe ser único, de lo contrario se generará un error.

Para más información sobre NPM se puede consultar la documentación oficial en el siguiente enlace.

javascriptnpmspanishwebdev
  • 0 0 Answers
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

Sidebar

Ask A Question

Stats

  • Questions 4k
  • Answers 0
  • Best Answers 0
  • Users 1k
  • Popular
  • Answers
  • Author

    How to ensure that all the routes on my Symfony ...

    • 0 Answers
  • Author

    Insights into Forms in Flask

    • 0 Answers
  • Author

    Kick Start Your Next Project With Holo Theme

    • 0 Answers

Top Members

Samantha Carter

Samantha Carter

  • 0 Questions
  • 20 Points
Begginer
Ella Lewis

Ella Lewis

  • 0 Questions
  • 20 Points
Begginer
Isaac Anderson

Isaac Anderson

  • 0 Questions
  • 20 Points
Begginer

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help

Footer

Querify Question Shop: Explore Expert Solutions and Unique Q&A Merchandise

Querify Question Shop: Explore, ask, and connect. Join our vibrant Q&A community today!

About Us

  • About Us
  • Contact Us
  • All Users

Legal Stuff

  • Terms of Use
  • Privacy Policy
  • Cookie Policy

Help

  • Knowledge Base
  • Support

Follow

© 2022 Querify Question. All Rights Reserved

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.