Concepts

Server Components

React paradigm where components execute on the server, sending only HTML to the client, reducing the JavaScript bundle and improving performance.

seed#server-components#rsc#react#nextjs#performance#rendering

What it is

React Server Components (RSC) are components that execute exclusively on the server. They don't send JavaScript to the client — only the resulting HTML. This drastically reduces bundle size and allows direct access to databases, APIs, and the filesystem.

Server vs Client Components

AspectServer ComponentClient Component
ExecutionServerBrowser
JavaScript to clientNoYes
InteractivityNo (no useState, onClick)Yes
DB/FS accessDirectVia API
MarkerDefault in Next.js'use client'

When to use each

  • Server: data fetching, DB access, static content, layouts
  • Client: interactivity, event handlers, state hooks, browser APIs

Performance impact

  • Less JavaScript sent to client
  • Streaming SSR for progressive loading
  • Data fetched on server (no waterfalls)

Why it matters

Server Components fundamentally change how React applications are built by moving rendering to the server. They reduce JavaScript sent to the client, simplify data access, and improve perceived performance — without sacrificing interactivity where needed.

References

Concepts