≡En resumen
- Node.js no es un lenguaje ni un framework: es el programa que ejecuta JavaScript fuera del navegador.
- Su bucle de eventos le permite atender miles de conexiones concurrentes sin crear un hilo por cada una.
- Destaca en APIs, tiempo real, microservicios y herramientas de desarrollo; no es la mejor opción para cálculo intensivo en el hilo principal.
- En producción usa siempre una versión LTS: a finales de septiembre de 2026, Node 24 o Node 22; Node 20 dejó de tener soporte el 30 de abril de 2026.
- Desde Node.js 27, el proyecto pasa a una versión mayor al año y todas llegarán a LTS.
01 ¿Qué es Node.js?
Lo creó Ryan Dahl y lo presentó en 2009 como respuesta a un problema concreto: los servidores de la época, como Apache, gestionaban mal miles de conexiones simultáneas porque dedicaban un hilo o proceso a cada una. En enero de 2010 llegó npm, su gestor de paquetes, que convirtió Node.js en un ecosistema. Tras una bifurcación del proyecto (io.js, en diciembre de 2014), ambas ramas se reunificaron en septiembre de 2015 con Node.js 4.0. Desde 2019 el proyecto está bajo la OpenJS Foundation, nacida de la fusión de la Node.js Foundation y la JS Foundation.
| Término | Qué es | Relación con Node.js |
|---|---|---|
| JavaScript | Lenguaje de programación | Es el lenguaje que Node.js ejecuta |
| V8 | Motor que compila JavaScript a código máquina | Node.js lo lleva dentro |
| npm | Gestor de paquetes y registro público | Se instala con Node.js |
| Express.js | Framework web | Funciona encima de Node.js |
| Deno y Bun | Otros runtimes de JavaScript/TypeScript | Alternativas a Node.js, con alta compatibilidad |
02 Cómo funciona Node.js: el bucle de eventos
Tu código JavaScript se ejecuta en un único hilo principal. Cuando pide algo lento (leer un archivo, consultar una base de datos, llamar a otra API), Node.js no se queda esperando: delega la operación en libuv, sigue atendiendo otras peticiones y, cuando la operación termina, ejecuta la función de respuesta (callback o promesa). Es el modelo de E/S no bloqueante.
-
1
Llega una petición
El servidor recibe, por ejemplo, un GET /pedidos/123.
-
2
Se lanza la consulta
El código pide el pedido a la base de datos y registra qué hacer con el resultado.
-
3
El hilo queda libre
Mientras la base de datos responde, el bucle de eventos atiende otras peticiones.
-
4
Llega el resultado
libuv avisa de que la consulta ha terminado y la tarea entra en la cola.
-
5
Se responde
El bucle ejecuta la función pendiente, que envía el JSON al cliente.
Guarda esto como server.js y ejecútalo con node server.js:
import { createServer } from 'node:http';createServer((req, res) => { res.writeHead(200, { 'Content-Type': 'application/json' }); res.end(JSON.stringify({ ok: true }));}).listen(3000);
Abre http://localhost:3000 y verás la respuesta. En un proyecto real usarías un framework como Express.js para organizar rutas y middleware.
03 Para qué sirve Node.js
APIs y backends
APIs REST o GraphQL que alimentan webs y apps; es su uso más extendido.
Tiempo real
Chats, notificaciones, paneles en directo y juegos con WebSockets o Server-Sent Events.
Microservicios y serverless
Arranque rápido y bajo consumo de memoria, útil en contenedores y funciones en la nube.
Renderizado web
Frameworks como Next.js, Nuxt o Astro usan Node.js para renderizar en servidor.
Herramientas de desarrollo
Bundlers, linters, CLIs y scripts de automatización se ejecutan con Node.js.
Integraciones
Conectores entre CRM, ERP, pasarelas de pago y servicios de IA.
En proyectos a medida, Node.js es una buena elección cuando el equipo ya trabaja con JavaScript o TypeScript en el frontend y el back-end es sobre todo E/S: leer y escribir en bases de datos, llamar a APIs externas, mover datos. Si estás valorando cuándo compensa construir algo propio, lo explicamos en la guía sobre software a medida.
04 Versiones de Node.js y calendario LTS en 2026
Hasta Node.js 26, el proyecto publica una versión mayor cada seis meses: las pares pasan a LTS (soporte a largo plazo) en octubre y las impares solo tienen seis meses de vida. Una LTS pasa por dos fases: Active (recibe mejoras y correcciones) y Maintenance (solo correcciones críticas y de seguridad). Estas son las fechas oficiales del grupo de lanzamientos de Node.js a 29 de septiembre de 2026:
| Versión | Nombre | Estado actual | Fin de soporte |
|---|---|---|---|
| Node.js 26 | Por asignar | Current; pasa a LTS el 28/10/2026 | 30/04/2029 |
| Node.js 24 | Krypton | Active LTS; a Maintenance el 20/10/2026 | 30/04/2028 |
| Node.js 22 | Jod | Maintenance LTS | 30/04/2027 |
| Node.js 20 | Iron | Sin soporte (EOL) | 30/04/2026 |
| Node.js 25 | — | Sin soporte (EOL) | 01/06/2026 |
05 Cómo instalar Node.js y empezar
-
1
Elige la versión LTS
En nodejs.org descarga la LTS recomendada, no la Current, salvo que quieras probar novedades.
-
2
Usa un gestor de versiones
Con nvm, fnm o Volta puedes tener varias versiones y cambiar por proyecto.
-
3
Comprueba la instalación
Ejecuta node -v y npm -v en la terminal.
-
4
Crea el proyecto
npm init -y genera el package.json donde se registran dependencias y scripts.
-
5
Fija la versión
Declara la versión en el campo engines o en un archivo .nvmrc para que todo el equipo use la misma.
- ✓Actualiza dentro de la misma versión mayor con frecuencia: los parches de seguridad llegan ahí.
- ✓Revisa dependencias con npm audit y mantén el archivo de bloqueo (package-lock.json) en el repositorio.
- ✓Gestiona secretos con variables de entorno; Node.js lee archivos .env con la opción --env-file.
- ✓Usa un gestor de procesos o contenedores para reiniciar la app si cae.
06 Ventajas, desventajas y alternativas a Node.js
| Ventajas | Desventajas |
|---|---|
| Mismo lenguaje en frontend y backend | No apto para cálculo intensivo en el hilo principal sin workers |
| Muy eficiente en E/S y conexiones concurrentes | Ecosistema de npm enorme, con dependencias de calidad desigual |
| Ecosistema npm con paquetes para casi todo | Cambios de versión mayor anuales que hay que planificar |
| Gratuito, código abierto (MIT) y multiplataforma | La programación asíncrona exige disciplina en el manejo de errores |
Las alternativas directas son Deno (creado también por Ryan Dahl, con TypeScript y permisos de seguridad de serie) y Bun (centrado en la velocidad y con herramientas integradas). Fuera del mundo JavaScript, compite con PHP, Python, Go o Java según el caso. Para decidir qué pila usar en un proyecto concreto, cuenta con nuestro equipo de desarrollo de aplicaciones web a medida, y si además necesitas app para iOS y Android, con el de desarrollo de apps a medida.
Preguntas frecuentes sobre Node.js
Es un entorno que ejecuta JavaScript fuera del navegador. Sirve para crear servidores, APIs, aplicaciones en tiempo real, microservicios y herramientas de desarrollo.
No. El lenguaje es JavaScript (o TypeScript); Node.js es el programa que lo ejecuta en el servidor o en tu ordenador.
Es sobre todo backend: se ejecuta en el servidor. También se usa en el flujo de trabajo del frontend para compilar, empaquetar y probar código.
Una LTS. A finales de septiembre de 2026, Node 24 (Active LTS) o Node 22 (Maintenance LTS). Node 26 pasa a LTS el 28 de octubre de 2026.
Sí. Es software libre con licencia MIT; puedes usarlo en proyectos comerciales sin coste de licencia.
JavaScript es el lenguaje; Node.js es un entorno que lo ejecuta fuera del navegador y le añade acceso a archivos, red y procesos del sistema.
Ryan Dahl, que lo presentó en 2009. Hoy lo mantiene una comunidad de colaboradores bajo la OpenJS Foundation.
Fuentes consultadas
Sobre el autor
Germán Gutiérrez
Development Manager en appyweb
Dirige el equipo de desarrollo de appyweb: aplicaciones web y móviles, SaaS, integraciones y arquitectura de software.
Ver perfil en LinkedIn ↗