Roadmap › React (with Hooks, React 19 & Next.js basics) › Module: React 19 and Server Components
Lessons in this course (17)
12. Server Components, SSR and Next.js basics
Advanced★ Must knowLesson 12 of 17
- CSR (client-side rendering): browser downloads JS and renders — slower first paint, weak SEO.
- SSR (server-side rendering): server renders HTML per request, client hydrates to make it interactive.
- SSG (static generation): HTML at build time; ISR regenerates periodically.
- React Server Components (RSC): components that run only on the server (can read databases/files directly, ship zero JS); Client Components (
"use client") handle state and events. Server Actions/Functions ("use server") are server functions callable from forms/client code.
tsx
// Next.js App Router — app/orders/page.tsx (Server Component by default)
export default async function OrdersPage() {
const orders = await db.order.findMany({ orderBy: { createdAt: "desc" }, take: 20 }); // runs on the server
return <OrderTable orders={orders} />;
}
// app/orders/new/actions.ts
"use server";
export async function createOrder(formData: FormData) {
await db.order.create({ data: { customer: String(formData.get("customer")) } });
revalidatePath("/orders");
}Next.js features: file-based routing (app/ directory, layouts, loading/error files), Server Components by default, streaming with Suspense, Route Handlers (API), middleware/proxy, image/font optimisation, caching. Deployed commonly on Vercel.