UNPKG

opencode-agent-kit

Version:

Multi-stack OpenCode agent toolkit — 33+ specialized AI agents, 200+ skills, 46 commands, 8 MCP servers (Nuxt, React, Node.js, Laravel, CI3, Android, Flutter, DevOps, SEO, SonarQube, and more)

84 lines (69 loc) 1.55 kB
--- title: Parallel Data Fetching with Component Composition impact: CRITICAL impactDescription: eliminates server-side waterfalls tags: server, rsc, parallel-fetching, composition --- ## Parallel Data Fetching with Component Composition React Server Components execute sequentially within a tree. Restructure with composition to parallelize data fetching. **Incorrect (Sidebar waits for Page's fetch to complete):** ```tsx export default async function Page() { const header = await fetchHeader() return ( <div> <div>{header}</div> <Sidebar /> </div> ) } async function Sidebar() { const items = await fetchSidebarItems() return <nav>{items.map(renderItem)}</nav> } ``` **Correct (both fetch simultaneously):** ```tsx async function Header() { const data = await fetchHeader() return <div>{data}</div> } async function Sidebar() { const items = await fetchSidebarItems() return <nav>{items.map(renderItem)}</nav> } export default function Page() { return ( <div> <Header /> <Sidebar /> </div> ) } ``` **Alternative with children prop:** ```tsx async function Header() { const data = await fetchHeader() return <div>{data}</div> } async function Sidebar() { const items = await fetchSidebarItems() return <nav>{items.map(renderItem)}</nav> } function Layout({ children }: { children: ReactNode }) { return ( <div> <Header /> {children} </div> ) } export default function Page() { return ( <Layout> <Sidebar /> </Layout> ) } ```