Next.js 15 ha consolidado el futuro del desarrollo web: React Server Components (RSC).
Esta nueva forma de renderizado combina lo mejor del cliente y del servidor, logrando velocidad, SEO y rendimiento sin sacrificar interactividad.

En este tutorial aprenderás cómo crear una web moderna usando React Server Components paso a paso.
¿Qué son los React Server Components?
Los React Server Components (RSC) permiten renderizar parte de tu aplicación en el servidor, enviando al cliente solo lo necesario.
Esto significa:
- Carga inicial ultra rápida.
- Menos JavaScript en el navegador.
- Mejor SEO sin usar frameworks externos.
- Mejor seguridad (no expones tus claves en el cliente).
En Next.js 15, los componentes del servidor son la forma por defecto de construir páginas.
Requisitos previos
Asegúrate de tener:
- Node.js 20+
- npm o pnpm
- Conocimientos básicos de React y TypeScript
Crea tu proyecto
npx create-next-app@latest mi-app-rsc cd mi-app-rsc npm run dev
Esto creará un proyecto con estructura basada en Next.js App Router, lista para trabajar con Server Components.
Crea tu primer componente del servidor
Dentro de app/, crea un archivo:
// app/servidor/page.tsx
export default async function ServidorPage() {
const res = await fetch("https://api.github.com/users/devcodelight");
const data = await res.json();
return (
<div style={{ padding: 20 }}>
<h1>👋 Bienvenido a React Server Components</h1>
<p>Usuario de GitHub: {data.login}</p>
<p>Seguidores: {data.followers}</p>
</div>
);
}
Este componente se ejecuta completamente en el servidor, por lo que la API key o los datos sensibles no llegan al cliente.
Mezcla componentes de servidor y cliente
Para añadir interactividad, usa la directiva "use client":
// app/componentes/Boton.tsx
"use client";
import { useState } from "react";
export default function Boton() {
const [clicks, setClicks] = useState(0);
return (
<button
onClick={() => setClicks(clicks + 1)}
style={{
background: "#0070f3",
color: "white",
padding: "10px 20px",
borderRadius: "10px",
}}
>
Clicks: {clicks}
</button>
);
}
Luego impórtalo en un componente del servidor:
// app/page.tsx
import Boton from "./componentes/Boton";
export default function Home() {
return (
<main>
<h1>Next.js 15 + React Server Components 🚀</h1>
<Boton />
</main>
);
}
Ahora tienes renderizado híbrido: parte servidor, parte cliente.
Añade caching inteligente
Los Server Components pueden usar fetch con caché integrada:
const data = await fetch("https://api.example.com/posts", { cache: "force-cache" });
O usar revalidación automática cada cierto tiempo:
const data = await fetch("https://api.example.com/posts", {
next: { revalidate: 60 },
});
Esto mejora el rendimiento sin necesidad de frameworks externos de caching.
5. Mejora tu SEO automáticamente
Al renderizar en el servidor, Next.js genera HTML listo para Google, y puedes personalizar metadatos:
export const metadata = {
title: "Mi App RSC 2025 | DevCodeLight",
description: "Ejemplo de React Server Components con Next.js 15",
};

Ingeniero en Informática, Investigador, me encanta crear cosas o arreglarlas y darles una nueva vida. Escritor y poeta. Más de 20 APPs publicadas y un libro en Amazon.