CodeAventura
Node.js
▸Tu proyecto Node▸Scripts de npm: automatiza tu trabajo

Misión

{
  "dependencies": {},
  "devDependencies": {}
}
TerminalTema: Vintage
08 / 15Scripts de npm: automatiza tu trabajo
Anterior

Scripts de npm: automatiza tu trabajo

Comandos que no quieres repetir

Cada proyecto tiene tareas que haces una y otra vez: arrancarlo, ejecutar tests, limpiar archivos, compilar... Escribir el comando completo cada vez es tedioso y propenso a errores.

Los scripts de npm son atajos que defines una vez y ejecutas siempre con npm run nombre. Es como crear tus propios comandos personalizados para tu proyecto.

Definiendo scripts

Los scripts viven en la sección scripts de tu package.json:

Cada script es simplemente un par nombre → comando. El nombre lo eliges tú, el comando es lo que se ejecutará en la terminal.

Ejecutando scripts

Hay dos scripts especiales que no necesitan run:

Son atajos de npm porque start y test se usan con tanta frecuencia que merecían un trato especial.

Scripts que todo proyecto debería tener

Aunque no hay reglas estrictas, hay una convención que la mayoría de proyectos sigue:

Script¿Qué hace?Ejemplo
startArranca la app en producciónnode index.js
devArranca la app en modo desarrollonode --watch index.js
testEjecuta los testsnode --test
buildCompila el proyectotsc
lintRevisa calidad del códigoeslint src/

Cuando llegas a un proyecto nuevo, lo primero que miras es la sección scripts. Te dice cómo arrancarlo, cómo probarlo y cómo trabajar con él. Es el manual de instrucciones del proyecto.

El flag --watch: tu aliado en desarrollo

Node.js tiene un flag muy útil para desarrollo:

Con --watch, Node vigila tu archivo y se reinicia automáticamente cada vez que guardas un cambio. Sin él, tendrías que parar y volver a ejecutar el script manualmente cada vez que cambias algo. Por eso es perfecto para el script dev.

Combinando scripts

Los scripts pueden encadenar comandos como lo harías en cualquier terminal:

El && significa "ejecuta el segundo comando solo si el primero fue exitoso". Es útil para crear workflows como "primero lint, después tests".

Tu desafío 🚀

  1. En la sección scripts, define un script start que ejecute node index.js
  2. Añade un script dev con un comando de desarrollo
  3. Añade un script test con un comando de testing
  4. Prueba a ejecutar npm start en la terminal

Los scripts son el pegamento que une tu flujo de trabajo. Un proyecto con buenos scripts es un proyecto donde cualquiera puede contribuir desde el primer momento.