🧒 Explain like I'm 5
Imagine a restaurant. A Server Component is like a dish that has already been prepared in the kitchen and is served to you — you don't need cooking tools (JavaScript) at the table. It's lightweight, fast, but not interactive (no button clicks, no typing). A Client Component is like a hot pot that you cook at the table — it comes with a gas stove and tools (JS downloaded to your machine) — it's heavier but allows for user interaction. The principle is: whatever can be pre-cooked should be handled by the kitchen; only bring the gas stove to the table when the customer truly needs to cook themselves.
Interactive quiz
Check your understanding with an instant-feedback quick check.
Detailed notes
Senior-level deep dive: internals, pitfalls, and a self-interview ladder.
Practice with AI feedback
Answer out loud, get scored on correctness, depth, and clarity.