A screenshot displaying the error "npm ERR! Missing script: start" on Windows Powershell

¿Cómo solucionar el error npm ERR! Missing script: “start”?

Node.js es una herramienta bastante ventajosa para crear RESTful APIs. Seguramente estabas trabajando con Node.js y un package manager como npm o yarn cuando te topaste con un error como npm ERR! Missing script: "start" o una variante como npm ERR! Missing script: "dev", npm ERR! Missing script: "test", o npm ERR! Missing script: "build".

¿Por qué suceden este tipo de errores? La verdad es que pueden ocurrir por una amplia variedad de razones.

¿Por qué ocurre el error npm ERR! Missing script: "start"? 5 causas frecuentes

He aquí una lista de las causas más comunes del error npm ERR! Missing script: "start"

  1. Abrir tu editor de código (IDE) en una carpeta que no contiene el archivo package.json de tu proyecto
  2. Abrir tu programa de línea de comandos en una carpeta que no contiene el archivo package.json de tu proyecto
  3. No tienes un archivo de package.json para tu proyecto
  4. No tienes un comando de start en la sección de scripts de tu archivo package.json
  5. Tener más de un objeto scripts en package.json

Ahora bien, ¿cuál es la solución para este fallo?

¿Cómo arreglar el error npm ERR! Missing script: "start"?

Lo más probable es que estés intentando iniciar un app de Node.js con el comando npm start. Si este es tu caso, asegúrate de seguir los siguientes pasos. 

  • Si el error aparece en el editor de código (por ejemplo, un IDE como Visual Studio Code), lo más probable es que estés utilizando una Terminal Integrada (Integrated Terminal). Asegúrate que abriste el editor de código en el directorio de tu proyecto y que en la Terminal Integrada también te encuentras en el directorio de tu proyecto. Dentro de esta carpeta debería encontrarse el archivo package.json
  • Si el error aparece en un programa de línea de comandos, como Powershell, Terminal o iTerm2, cerciórate que te encuentras en la carpeta correcta. Dentro de esta carpeta debería encontrarse el archivo package.json

Si intentas correr el comando npm start desde un directorio distinto, npm no encontrará el archivo de package.json y te generará el error Missing script: "start".

  • Si te encuentras en el directorio correcto, ¿existe un archivo package.json dentro de esta carpeta? Si no tienes un package.json, puedes crear uno en tu programa de línea de comandos al ejecutar el siguiente comando: npm init -y.
  • Si ya te encuentras en la carpeta apropiada, abre el archivo package.json, y revisa la sección de scripts y asegúrate que esta tiene un comando start. Tu archivo de package.json debe tener una sección similar al bloque de código debajo. Presta especial atención a cómo scripts tiene una propiedad start.
JSON
// package.json
{
  "name": "demo-node-ts",
  "version": "1.0.0",
  "scripts": {
    "start": "node index.js"
  },
  "devDependencies": {
    "jest": "29.5.0"
  }
}
  • Otra causa es tener más de un objeto “scripts” en package.json. Esto provoca un error porque el segundo objeto “scripts” invalida al primero. Si tienes dos objectos scripts, puede que solo tengas el comando start en el primer objeto scripts. Así que confirma que solo tienes un objeto scripts.
Revisa la sección de scripts y asegúrate que esta contiene un comando start
npm init se utiliza para inicializar un projecto y crear el archivo de package.json
Archivo package.json con con más de un objeto “scripts”. El segundo anula al primero.

Comúnmente, cada proyecto Node.js tiene su propio archivo de package.json donde se especifican datos descriptivos sobre el proyecto, como por ejemplo, el nombre, la versión, sus dependencias, y scripts que apuntan a otros archivos para ejecutarlos.

npm ERR! Missing script: “dev” y errores parecidos

npm ERR! Missing script: "dev" en Windows PowerShell

En ocasiones puede que te topes con errores similares tales como los siguientes:

  • npm ERR! Missing script: “dev”
  • npm ERR! Missing script: “build”
  • npm ERR! Missing script: “test”
  • npm ERR! Missing script: “lint”
  • npm ERR! Missing script: “watch”

El origen de estas fallas son las mismas que para el error de npm ERR! Missing script: "start". Así que analiza lo que ya se ha dicho en este artículo sobre la raíz de ese error y sus posibles resoluciones. 

Similar Posts