React Server Components for SPA Veterans

You already know how to build a single-page app. You have shipped several. You reach for useState, you reach for useEffect, you wire up a fetch, and by now the shape of that code arrives before the thought does.

Server Components break the reflex. Most explanations of them start from the framework's side — routing, bundling, the wire format — which is exactly backwards for a developer whose mental model is already built and working. So this one starts from your side: the code you write today, what replaces it, and what the replacement costs you.

Everything here runs on React 19 and Next.js 16, which is where Server Components are production-stable today.

You have written this useEffect a dozen times