Back to Mastery Path
Rendering

Streaming with Suspense

Streaming allows the server to send the page in small pieces. You see the fast parts immediately while the slow parts are still being prepared.

Interactive Simulation Engine

Streaming with Suspense

Watch how the page "fills in" as data resolves.

Executable Code Workbench
page.tsx
Live Code Editor
1import { Suspense } from 'react'
2
3export default function Page() {
4  return (
5    <section>
6      <h1>My Store</h1>
7      <Suspense fallback={<p>Loading Products...</p>}>
8        <ProductList />
9      </Suspense>
10    </section>
11  )
12}
Mental Model
It's like going to a restaurant: the waiter brings the breadsticks (the shell) immediately so you can start eating while the pizza (the main data) is still in the oven.
Why This Exists
To eliminate the 'all-or-nothing' rendering problem where one slow API call blocks the entire page from showing up.
Critical Note
"Developers often confuse this pattern with traditional client React. Use the Live Code Workbench above to simulate execution."