Next.js vs Node.js: cómo se relacionan

Next.js vs Node.js: framework frente a runtime, explicado | We.Inc

Node.js ejecuta JavaScript fuera del navegador; Next.js es un framework de React que funciona sobre él. Mira la pila capa por capa, un mismo endpoint en ambos y cuándo usar cada uno.

Node.js es un runtime: el programa que ejecuta JavaScript en un servidor o en tu portátil. Next.js es un framework de React para crear sitios web, y sus herramientas de compilación y su servidor funcionan sobre Node.js. Así que rara vez hay que elegir uno u otro. Toda aplicación Next.js necesita Node.js por debajo, mientras que una aplicación Node.js no tiene por qué incluir Next.js.

Runtime frente a framework

La forma más rápida de ver la relación es fijarse en las capas por las que pasa una petición. Haz clic abajo en cada capa de una aplicación Next.js típica para ver qué hace y quién es responsable de ella.

Preguntas frecuentes

¿Next.js es backend o frontend?

Ambas cosas, con límites. Renderiza páginas de React en el servidor, envía las partes interactivas al navegador y te permite escribir Route Handlers para endpoints JSON. No está pensado para ser un backend completo para muchos otros clientes.

¿Tengo que aprender Node.js antes que Next.js?

Necesitas tener Node.js instalado y manejarte con npm y la terminal. No hace falta conocer a fondo el módulo node:http, porque Next.js se encarga del servidor por ti.

¿Next.js sigue teniendo un Edge Runtime?

La opción de ruta runtime ahora indica 'nodejs' como valor por defecto y 'edge' como obsoleto. La documentación pide quitar el export runtime de los archivos de ruta, así que el código nuevo debe dar por hecho Node.js.

¿Puedo ejecutar Next.js con Bun o Deno?

La documentación de despliegue de Next.js incluye Bun como adaptador verificado y Deno Deploy entre otras plataformas con su propia integración. Las funciones compatibles varían fuera del servidor Node.js, así que revisa las notas de la plataforma.

¿Express es el mismo tipo de cosa que Next.js?

Se parece más que Node.js, ya que ambos son librerías sobre Node.js. Express es un kit mínimo para servidores HTTP; Next.js es un framework completo para sitios web construido en torno a React.

Node.js en un párrafo

Lo que Next.js añade encima

Cómo elegir para un proyecto

Servidor Node.js simple

Usa solo el módulo integrado node:http. Tú decides el puerto, las cabeceras y el enrutado. Ejecútalo con node server.mjs.

Route Handler de Next.js

La ruta del archivo se convierte en /api/hello y Next.js ejecuta el servidor. Las rutas desconocidas reciben automáticamente la página 404 del framework.

Dónde se ejecuta Node.js en un proyecto Next.js

Scripts de package.json

Cada script arranca un proceso de Node.js: el servidor de desarrollo, la compilación de producción y el servidor de producción.

Navegador

El visitante

Recibe el HTML que Next.js renderizó en el servidor y luego carga JavaScript solo para los Client Components, para que funcionen los botones y formularios.

El código de tu aplicación

Tú

Páginas, layouts y Route Handlers en la carpeta app. Es React más unas cuantas convenciones de Next.js, escrito en JavaScript o TypeScript.

El framework

Asigna carpetas a URL, renderiza los Server Components, empaqueta el código de cliente y ejecuta el servidor de producción que arranca next start.

El runtime

Ejecuta todo el JavaScript de arriba en el servidor: la compilación, el servidor de desarrollo y cada petición en producción.

Sistema operativo

Tu hosting

macOS, Windows, Linux o un contenedor. Next.js indica macOS, Windows incluido WSL, y Linux como sistemas compatibles para desarrollo.

Las capas de una aplicación Next.js

Elige una capa

Responsable: {v}

Capa {n} de {v}, de arriba abajo

Empieza gratis · Sin tarjeta de crédito

Relacionado: Guías

Producto

Para quién es

Funciones

Recursos

Empresa

Mapa del sitio