Skip to content
Templates

Fixed-height dashboard

A dashboard or console where the header stays put and only the content scrolls.

A fill-height SidebarProvider that pins itself to the viewport: the header never scrolls, and SidebarInset becomes the single internal scroll container. Passing a ref to SidebarInset lets the app own scroll restoration on that element. Reach for this over the auto-height frame when the chrome must stay fixed and the content region scrolls independently.

SidebarProvider
height=fill - pinned to the viewport
Sidebar
the left nav rail
SidebarInset
the internal scroll container
header
fixed toolbar - sits above the scrolling content
<SidebarProvider height="fill">
  <Sidebar>
    {/* nav rail */}
  </Sidebar>
  {/* SidebarInset is the scroll container - ref it for scroll restoration. */}
  <SidebarInset ref={scrollRef}>
    <header>{/* toolbar */}</header>
    {children}
  </SidebarInset>
</SidebarProvider>

Built from sidebar