Después de instalar Node.js, no necesitas empezar con un framework ni descargar paquetes. Primero comprueba que la terminal encuentra node y npm, ejecuta un archivo JavaScript sencillo y levanta un servidor HTTP únicamente en tu equipo. Esa secuencia confirma que el entorno funciona y te deja preparado para organizar un proyecto cuando realmente lo necesites.
Las instrucciones de instalación cambian según Windows, macOS y las distribuciones de Linux. Este recorrido se concentra en lo que puedes hacer una vez terminada la instalación, sin asumir un sistema operativo concreto.
As an Amazon Associate I earn from qualifying purchases.
1. Comprueba que Node.js y npm están disponibles
Abre una terminal: PowerShell o Símbolo del sistema en Windows, Terminal en macOS, o la terminal de tu distribución Linux. Ejecuta estos comandos, uno por uno:
node --version
npm --version
Cada comando debe imprimir un número de versión. La primera respuesta confirma que el ejecutable de Node.js está en el PATH; la segunda indica que el gestor de paquetes npm también puede iniciarse. No hace falta que coincidan los números: son versiones de herramientas distintas.
#1 Best Overall
Las versiones disponibles cambian con el tiempo. Consulta la página oficial de descargas de Node.js el día que publiques o actualices este tutorial. Allí se distinguen las líneas LTS, Current y EOL. Para empezar, normalmente conviene elegir una línea LTS que siga mantenida, pero la decisión depende de la fecha, del proyecto y de sus requisitos.
Si la terminal dice que el comando no existe
Un mensaje como “node no se reconoce”, “command not found: node” o equivalente significa que la terminal no encuentra el ejecutable. Cierra y vuelve a abrir la terminal para cargar cambios recientes en el PATH. Si el error continúa, revisa que la instalación haya terminado correctamente y repite la instalación usando la guía y los binarios de nodejs.org adecuados para tu sistema.
Node.js advierte que los scripts de instalación de terceros no son mantenidos por el proyecto. Evita copiar comandos de páginas no oficiales como si fueran soporte de Node.js; utiliza los dominios oficiales para descargar binarios y consultar la documentación. La página institucional de Node.js también reúne enlaces de referencia: About Node.js.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstall2. Crea y ejecuta tu primer archivo JavaScript
Una prueba mínima debe aislar el runtime de cualquier editor, framework o dependencia. Crea una carpeta de trabajo y entra en ella desde la terminal. Puedes hacerlo con el explorador de archivos y después abrir una terminal en esa carpeta, o con comandos equivalentes a estos:
mkdir prueba-node
cd prueba-node
Dentro de esa carpeta, crea un archivo llamado hola.js con este contenido:
console.log('Hola desde Node.js');
Guarda el archivo y ejecútalo así:
node hola.js
La terminal debe mostrar Hola desde Node.js. El patrón es siempre el mismo: node seguido de la ruta del archivo. Por ejemplo, si el archivo está en una subcarpeta llamada src, usarías node src/hola.js. La referencia oficial muestra este flujo de crear un archivo y ejecutarlo con node hello-world.js; puedes consultar el ejemplo en Usage and example.
Rank #2
Qué demuestra esta prueba
- La terminal encuentra el ejecutable de Node.js.
- Node.js puede leer un archivo con extensión
.js. - El programa se ejecuta sin instalar librerías adicionales.
- Los mensajes de
console.logaparecen en la salida de la terminal.
Si aparece “Cannot find module” para un archivo que sí existe, comprueba que estás situado en la carpeta correcta y que escribiste exactamente el nombre, incluida su extensión. En sistemas sensibles a mayúsculas y minúsculas, Hola.js y hola.js pueden ser nombres diferentes. Si el archivo se abre en un editor y parece vacío desde la terminal, guarda los cambios antes de volver a ejecutar el comando.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →3. Levanta un servidor HTTP local
Cuando el script anterior funciona, el siguiente paso útil es comprobar que Node.js puede atender una solicitud HTTP. Crea servidor.js en la misma carpeta con este ejemplo basado en el módulo integrado http:
const http = require('node:http');
const servidor = http.createServer((solicitud, respuesta) => {
respuesta.statusCode = 200;
respuesta.setHeader('Content-Type', 'text/plain; charset=utf-8');
respuesta.end('Hello, World!');
});
servidor.listen(3000, '127.0.0.1', () => {
console.log('Servidor en http://127.0.0.1:3000');
});
Inícialo desde la carpeta del archivo:
node servidor.js
Mientras el proceso siga activo, abre http://127.0.0.1:3000 en el navegador. Deberías ver Hello, World!. La respuesta en el navegador confirma que el servidor está escuchando en el puerto 3000 y que puede procesar una petición local, tal como describe la introducción oficial de Node.js en Introduction to Node.js.
Este servidor está enlazado a 127.0.0.1, la dirección de tu propio equipo. Es un entorno de desarrollo local, no un despliegue público ni un servicio accesible desde Internet. Para detenerlo, vuelve a la terminal y pulsa Ctrl+C. Si el puerto 3000 ya está ocupado, aparecerá un error de dirección en uso; detén el proceso que lo utiliza o cambia 3000 por otro puerto libre y abre la nueva dirección en el navegador.
Por qué el ejemplo usa require
El archivo anterior utiliza CommonJS, uno de los dos sistemas de módulos que admite Node.js. require('node:http') carga el módulo HTTP integrado y no instala nada desde npm. Mantener el ejemplo en CommonJS evita añadir configuración antes de comprobar el servidor.
4. Elige un sistema de módulos y sé coherente
Node.js admite CommonJS y ECMAScript modules (ESM). Ambos permiten dividir una aplicación en archivos y reutilizar código, pero la sintaxis y la configuración no son iguales. No existe una elección universalmente mejor para todos los proyectos: sigue la convención del proyecto que uses y no mezcles ejemplos sin entender cómo se interpreta cada archivo.
Rank #3
| Sistema | Importación habitual | Configuración relevante | Cuándo usar el ejemplo |
|---|---|---|---|
| CommonJS | const http = require('node:http'); |
Un archivo .js puede ejecutarse con esta sintaxis sin declarar "type": "module". |
Es el sistema del servidor mostrado arriba. |
| ECMAScript modules | import http from 'node:http'; |
En archivos .js, declara "type": "module" en package.json, o utiliza la extensión .mjs. |
Úsalo cuando el proyecto ya está configurado para ESM. |
La documentación de módulos explica las reglas de CommonJS en Modules: CommonJS modules y la introducción de Node.js presenta ejemplos de ambas variantes. La extensión del archivo y el campo type de package.json determinan cómo interpreta Node.js un archivo JavaScript.
Ejemplo equivalente con ESM
Si quieres probar ESM, crea un package.json mínimo en la carpeta con este contenido:
{
"type": "module"
}
Después crea servidor-esm.js:
import http from 'node:http';
const servidor = http.createServer((solicitud, respuesta) => {
respuesta.statusCode = 200;
respuesta.setHeader('Content-Type', 'text/plain; charset=utf-8');
respuesta.end('Hello, World!');
});
servidor.listen(3000, '127.0.0.1', () => {
console.log('Servidor en http://127.0.0.1:3000');
});
Ejecuta node servidor-esm.js después de detener cualquier servidor que ya esté usando el puerto 3000. La lógica es la misma; solo cambia la forma de importar el módulo y la configuración que indica a Node.js que los archivos .js son ESM. Otra opción es renombrar el archivo a servidor-esm.mjs y ejecutarlo sin añadir type al paquete.
Recommended Free Tools
5. Decide cuándo crear un proyecto con package.json
El archivo independiente es suficiente para probar el runtime o escribir un script pequeño. Cuando el trabajo crece, package.json proporciona un lugar para describir el proyecto, declarar su sistema de módulos, registrar scripts y enumerar dependencias. npm gestiona paquetes del ecosistema JavaScript, pero instalar paquetes no es un requisito para ejecutar hola.js ni el servidor HTTP de este tutorial.
Inicializa el proyecto
Desde la carpeta del proyecto, ejecuta:
npm init -y
npm generará un package.json con valores iniciales. Ábrelo y edítalo para que refleje el nombre y la configuración que necesitas. Si vas a usar ESM en archivos .js, añade el campo "type": "module". Si mantienes CommonJS, no añadas ese campo solo por seguir una moda: la sintaxis del código y la configuración deben coincidir.
Añade un script de ejecución
En package.json, incorpora una sección scripts como esta:
Rank #4
{
"scripts": {
"start": "node servidor.js"
}
}
Con el archivo guardado, puedes iniciar el servidor mediante:
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →npm run start
El comando ejecuta la misma orden que antes, pero le da un nombre estable al flujo del proyecto. Si el archivo se llama servidor-esm.js, cambia el valor a node servidor-esm.js y conserva la configuración ESM correspondiente.
Instala una dependencia solo cuando tenga un propósito
Si tu aplicación necesita una biblioteca externa, instala únicamente la que resuelva una necesidad concreta y revisa qué entrada añade npm a package.json. Un proyecto con dependencias también debe conservar el archivo de bloqueo que genera npm para que las instalaciones posteriores reproduzcan el árbol de paquetes previsto. No conviertas la instalación de paquetes en un paso automático: cada dependencia añade código que tendrás que actualizar y mantener.
La ruta oficial de aprendizaje separa la gestión y publicación de paquetes de los primeros pasos de ejecución. Consulta el índice de Learn Node.js cuando necesites profundizar en npm, módulos o distribución de paquetes.
6. Diferencia entre un archivo suelto y un proyecto organizado
| Enfoque | Pasos | Ventaja principal | Úsalo cuando |
|---|---|---|---|
| Archivo independiente | Crear .js y ejecutar node archivo.js. |
Comprueba Node.js con la menor cantidad de configuración. | Estás aprendiendo, automatizando una tarea pequeña o probando una idea. |
Proyecto con package.json |
Ejecutar npm init -y, definir scripts y añadir dependencias justificadas. |
Centraliza comandos, configuración y paquetes del proyecto. | El código crecerá, varias personas lo ejecutarán o necesitas bibliotecas externas. |
Empieza por el primer enfoque y pasa al segundo cuando aparezca una necesidad real. Crear carpetas, instalar paquetes y añadir configuraciones antes de tener un objetivo concreto dificulta saber qué parte funciona y cuál introdujo un error.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minute7. Soluciona los problemas más habituales
“node” o “npm” no se encuentra
- Reabre la terminal para recargar el PATH.
- Comprueba de nuevo
node --versionynpm --version. - Si el error persiste, verifica la instalación con los recursos oficiales de tu sistema en Descarga Node.js.
El archivo no se encuentra
Ejecuta node desde la carpeta que contiene el archivo o proporciona su ruta relativa. Lista el contenido de la carpeta con la herramienta de archivos de tu sistema y confirma que el nombre termina en .js; algunos editores pueden ocultar extensiones y guardar accidentalmente un archivo como hola.js.txt.
Best Value
El puerto está ocupado
Un servidor solo puede escuchar en un puerto que esté libre para esa dirección. Detén el proceso anterior con Ctrl+C. Si no puedes hacerlo, cambia el número en servidor.listen, por ejemplo a 3001, y visita http://127.0.0.1:3001.
Mezclaste require e import
Revisa la configuración de package.json y la extensión del archivo. Un proyecto configurado con "type": "module" debe seguir la sintaxis ESM en sus archivos .js; el ejemplo CommonJS puede mantenerse en un archivo que Node.js interprete como CommonJS o adaptarse a ESM. No cambies ambas cosas a la vez: modifica una decisión, ejecuta el archivo y lee el mensaje de error resultante.
El navegador no muestra la respuesta
Comprueba que la terminal todavía muestra el mensaje de servidor iniciado y que no terminó por un error. Usa exactamente 127.0.0.1 y el puerto configurado. Si cambiaste el puerto, actualiza también la dirección del navegador. Recuerda que el proceso solo responde mientras la terminal permanece ejecutándolo.
8. Qué estudiar después de esta prueba
Una vez que hayas ejecutado el script y el servidor local, continúa en un orden que añada una capacidad cada vez:
- Módulos: divide el código en archivos y aprende las reglas de CommonJS y ESM antes de combinar sintaxis.
- HTTP: entiende solicitudes, respuestas, cabeceras, códigos de estado y rutas dentro del servidor local.
- Sistema de archivos: lee y escribe archivos desde Node.js, tratando correctamente las rutas y los errores.
- Asincronía: practica callbacks, promesas y
async/awaitcon operaciones que no deben bloquear el proceso. - Pruebas integradas: añade pruebas automatizadas para comprobar funciones y comportamientos sin depender de comprobaciones manuales.
- Diagnóstico y seguridad: aprende a interpretar errores, registrar información útil y manejar entradas externas con cuidado.
- TypeScript: explora una capa de tipos cuando el tamaño o las necesidades del proyecto lo justifiquen.
El índice oficial de Learn Node.js reúne rutas específicas para estos temas, además de la documentación de paquetes. Avanza solo cuando puedas explicar qué problema resuelve cada herramienta o configuración.
9. Mantén actualizada la referencia de versiones
Las etiquetas LTS, Current y EOL cambian a medida que Node.js publica nuevas versiones. Por eso no conviene presentar una lista de versiones como permanente ni copiar una versión objetivo sin comprobarla. Antes de instalar en otro equipo, actualizar un proyecto o redactar instrucciones nuevas, revisa la página oficial de descargas y confirma qué línea recibe mantenimiento en ese momento.
La documentación enlazada puede mostrar ejemplos identificados con una versión concreta, como la referencia de uso de Node.js v26.10.0. El código básico de este tutorial sirve para demostrar el flujo, pero las opciones exactas y las recomendaciones de soporte deben contrastarse con la documentación vigente de la versión que hayas elegido.
La comprobación final
Tu instalación está lista para empezar cuando node --version y npm --version responden, node hola.js imprime el saludo y node servidor.js permite ver Hello, World! en http://127.0.0.1:3000. A partir de ahí, elige CommonJS o ESM de forma consciente, crea package.json cuando el proyecto necesite scripts o dependencias y usa las páginas oficiales para verificar versiones y procedimientos de descarga.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

