Objetivo del tema
El propósito de este módulo es que puedas iniciar un proyecto con npm, comprender la estructura mínima requerida, diferenciar los tipos de dependencias y aprovechar los scripts para automatizar tareas frecuentes.
Al ejecutar npm init
dentro de una carpeta vacía, la CLI inicia un asistente interactivo que genera el archivo package.json
. Este archivo describe el proyecto y enumera sus dependencias.
npm init
El asistente solicita datos como nombre, versión, descripción, punto de entrada y licencia. Puedes modificar cualquiera de esos valores más adelante.
Cuando necesites una configuración rápida, utiliza npm init -y
. Ese comando acepta todas las opciones por defecto y genera un package.json
listo para editar.
npm init -y
Es recomendable revisar el archivo creado tras usar la opción -y
para ajustar campos como name
, description
o author
antes de compartir el proyecto.
La estructura inicial dependerá del tipo de aplicación, pero existen carpetas y archivos habituales que facilitan la colaboración.
mi-aplicacion/
|-- package.json
|-- package-lock.json
|-- node_modules/
|-- src/
| `-- index.js
`-- README.md
package.json
describe el proyecto y sus dependencias.package-lock.json
registra las versiones exactas instaladas.node_modules/
aloja las dependencias descargadas; no se comparte en el repositorio.src/
contiene el código fuente, aunque puedes elegir otro nombre.README.md
documenta instrucciones de instalación y uso.Si tu proyecto necesita archivos de configuración (por ejemplo, linters o transpiladores), agrégalos en la raíz para que sean visibles desde el inicio.
npm clasifica las dependencias en función de su uso:
Instala cada grupo con el indicador adecuado para que quede registrado en el manifiesto.
npm install express # Se guarda en dependencies
npm install --save-dev jest # Se guarda en devDependencies
Mantener esta distinción permite que otros integrantes del equipo sepan qué herramientas son obligatorias para ejecutar la aplicación y cuáles son exclusivas del flujo de desarrollo.
Los scripts definidos en package.json
permiten encapsular comandos frecuentes bajo nombres cortos ejecutables con npm run
. Al menos conviene definir scripts para iniciar la aplicación y correr pruebas.
{
"name": "mi-aplicacion",
"version": "1.0.0",
"scripts": {
"start": "node src/index.js",
"dev": "nodemon src/index.js",
"test": "jest",
"lint": "eslint src"
}
}
npm run start
para iniciar el servidor.npm run dev
cuando necesites recarga automática durante el desarrollo.npm test
es un alias que ejecuta el script test
sin escribir run
.Define scripts descriptivos y consistentes para que el equipo reconozca de inmediato sus propósitos. Puedes encadenar comandos utilizando operadores del sistema operativo o paquetes como npm-run-all
si necesitas tareas más complejas.
Inicializar correctamente el proyecto, organizar su estructura, clasificar las dependencias y centralizar las tareas en scripts deja la base preparada para escalar tu aplicación. En los siguientes temas aprenderás a gestionar dependencias durante el ciclo de vida del proyecto.