Serializable props across the RSC boundary.
Skip to solutionKEEP THE
mediumFrontend
How do you pass data from Server Components to Client Components in Next.js?
350 views
01
Understand the problem
nextjsrscpropsserialization
02
Attempt it yourself
Sketch your approach before reading the solution — that's what interviews test.
Nudge consolestandby
Stuck? Beam a request up — the console returns a conceptual nudge that guides your logic without spoiling the implementation.
03
Study the solution
You fetch data in a Server Component and pass it as props to a Client Component. The props must be serializable (no functions, classes, or Dates beyond what React can serialize), since they cross the server-to-client boundary in the RSC payload.
Solution ready — 2 min read
Classified // press E to declassify
04
Read the code
Fetch on server, pass trimmed props
// server
export default async function Page() {
const user = await db.user.find();
// pass only what the client needs (serializable, no secrets)
return <Profile name={user.name} avatar={user.avatarUrl} />;
}
// client
'use client';
function Profile({ name, avatar }: { name: string; avatar: string }) {
const [following, setFollowing] = useState(false);
return <button onClick={() => setFollowing(!following)}>{name}</button>;
}05
Join the discussion
Discussion (0)
Sign in to join the discussion.
No responses yet. Be the first to share what you think.
Transmission complete // awaiting log
KEEP THE
STREAK ALIVE.
Dossier 59 of 95 decoded in the Next.js track. One more won't hurt.