Most React apps still spell out `if (loading) … if (error) … if (data)` in every component. Suspense + an error boundary collapses all three into the JSX tree above. Here is the working pattern with React Query / SWR, the streaming SSR story, and the trap that makes Suspense look slow.