AppFrame

Full-page application shell with persisted collapsible sidebar. Includes a signal-driven top progress bar with determinate progress, error state, and dismissible error strip.

Category: layout · WCAG 2.1-AA · layout, shell, sidebar, navigation

States

Props

PropTypeDefaultDescription
footerReactNode—Optional sticky footer rendered below the content area.
sideNavMode'push' | 'overlay'pushpush (default): sidebar takes grid space; overlay: sidebar floats over content.
headerReactNode—Top header slot
sideNavReactNode—Side navigation slot
asideReactNode—Right aside slot
childrenReactNode—Main content
persistKeystring | falsecascade.appshelllocalStorage key prefix. Pass false to disable persistence.
stateShellState—External shell state from createShellState(). Created internally when omitted.

Design tokens

When to use

When not to use

Examples

Basic

App shell with collapsible nav

<AppFrame header={<Header />} sideNav={<Nav />}>content</AppFrame>

Related components

← Back to docs