Node.js es lo que permite ejecutar JavaScript fuera del navegador: en tu ordenador o en un servidor. Con él, el mismo lenguaje que usas para el front te sirve para el backend, herramientas de línea de comandos o scripts. Y npm es su gestor de paquetes: la tienda de la que instalas librerías. En esta guía das tus primeros pasos con los dos.
Es un paso de la hoja de ruta para aprender JavaScript. Conviene llegar aquí con la base del lenguaje ya dominada.
Qué es Node.js (y para qué sirve)
El navegador tiene un motor que ejecuta JavaScript. Node.js coge ese motor (V8, el de Chrome) y lo saca fuera, para que puedas ejecutar JS en tu máquina. Con eso puedes crear servidores y APIs, herramientas de build (como las que usa React), scripts de automatización y aplicaciones de escritorio. Es la base de casi todo el tooling web moderno.

Instalar Node y comprobar
Descarga Node desde su web oficial (te recomiendo la versión LTS, la estable). npm viene incluido. Comprueba que están instalados abriendo una terminal:
node -v # muestra la versión de Node
npm -v # muestra la versión de npm
Tu primer proyecto: npm init y package.json
Crea una carpeta, entra en ella y ejecuta npm init -y. Eso genera un package.json, la ficha de tu proyecto: nombre, versión, dependencias y scripts.
mkdir mi-proyecto
cd mi-proyecto
npm init -y
Crea un archivo index.js y ejecútalo con Node:
// index.js
console.log('¡Hola desde Node!');
node index.js # imprime: ¡Hola desde Node!
Instalar paquetes con npm
Para añadir una librería, usa npm install. Se descarga en la carpeta node_modules y se apunta en tu package.json.
npm install dayjs # dependencia del proyecto
npm install --save-dev nodemon # dependencia solo de desarrollo
Nunca subas node_modules a tu repositorio: con el package.json, cualquiera reinstala todo con un simple npm install.
Módulos: import / require
Un módulo es un archivo que exporta funciones o valores para reutilizarlos en otro. Hay dos sintaxis: la moderna (ES Modules, import/export) y la clásica de Node (CommonJS, require/module.exports).
// suma.js (ES Modules)
export function suma(a, b) {
return a + b;
}
// index.js
import { suma } from './suma.js';
console.log(suma(2, 3)); // 5
Para usar import/export en Node, añade "type": "module" en tu package.json.
Scripts de npm
En la sección scripts del package.json defines atajos para comandos que repites, y los lanzas con npm run.
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
}
Así, npm start arranca tu app y npm run dev la reinicia sola al guardar (gracias a nodemon).
Webpack y Babel, en dos líneas
Webpack es un empaquetador (bundler): junta todos tus archivos JS, CSS e imágenes en unos pocos optimizados para producción. Babel es un transpilador: convierte JavaScript moderno en una versión compatible con navegadores antiguos. No hace falta configurarlos a mano al empezar: frameworks como React o herramientas como Vite ya los traen listos. Cuando llegues a un framework, ya te encontrarás con ellos por debajo.
Preguntas frecuentes
¿Node.js es un lenguaje?
No. Node.js es un entorno de ejecución para JavaScript fuera del navegador. El lenguaje sigue siendo JavaScript; Node solo le da un sitio nuevo donde correr.
¿Qué diferencia hay entre dependencia normal y de desarrollo?
Las normales (npm install) las necesita tu app para funcionar en producción. Las de desarrollo (--save-dev) solo se usan mientras programas (herramientas de build, test, recarga automática) y no van al servidor final.
¿Tengo que aprender Node para hacer front-end?
Aunque solo hagas front, acabarás usándolo: los frameworks modernos, los bundlers y las herramientas de test corren sobre Node. Con las nociones de esta guía (instalar, npm, scripts) vas sobrado para empezar.
Con Node y npm controlados, el siguiente salto es un framework. Tienes guías de React, Vue y Angular. Y el temario completo, en la hoja de ruta de JavaScript.


