Default
A full shell with sidebar navigation and a main content inset.
The trigger lives inside SidebarInset so it remains available when the sidebar is collapsed.
With groups
Organize items into labelled groups using SidebarGroupLabel.
Groups should stay short enough to scan. Split unrelated sections instead of using one long menu.
Collapsed state
Start collapsed with defaultOpen={false} and collapsible="icon" to show icon-only rail.
Use tooltip on collapsed menu buttons so text labels are still available on hover or focus.
Mobile sheet
Force mobile mode with mobile to review the small-screen behavior without resizing the browser.
On real mobile viewports the provider switches automatically at mobileBreakpoint. The sidebar becomes a side-aware Sheet and uses mobileWidth instead of the desktop width.