DS0
Components

AppShell

A full-page layout container with header, sidebar, content, and footer slots.

Overview

AppShell provides a structured full-page layout with predefined slots for header, sidebar, main content, and footer. It handles responsive behavior and sidebar collapse states automatically.

My App
DocsSettings

Welcome back

This is the main content area of the AppShell layout.

© 2026 My App. All rights reserved.

Usage

<AppShell>
  <AppShell.Header>
    <Logo />
    <Nav />
  </AppShell.Header>
  <AppShell.Sidebar>
    <SidebarNav />
  </AppShell.Sidebar>
  <AppShell.Content>
    <main>{children}</main>
  </AppShell.Content>
  <AppShell.Footer>
    <FooterLinks />
  </AppShell.Footer>
</AppShell>

API Reference

PropTypeDefaultDescription
sidebarCollapsedbooleanfalseWhether the sidebar is collapsed
sidebarWidthstring'260px'Sidebar width when expanded
sidebarCollapsedWidthstring'64px'Sidebar width when collapsed
headerHeightstring'64px'Header height

AI Decision Guide

Use AppShell when:

  • Building a full application layout with sidebar navigation
  • Need consistent header/footer across all pages
  • Want built-in responsive sidebar behavior

Don't use AppShell when:

  • Simple landing pages → use Container and Stack
  • Marketing pages with custom layouts
ComponentWhen to Use Instead
SidebarStandalone side navigation
ContainerSimple max-width wrapper

On this page