Sidebar

A composable, themeable and customizable sidebar component.

Loading preview…

Installation

Usage

Use sidebar for app navigation shells. Wrap with Sidebar.Provider, compose Root + menu parts, and place page chrome in Sidebar.Inset. Requires $lib/hooks/is-mobile.svelte.js (IsMobile) and sidebar CSS variables in your theme.

1<script lang="ts">
2	import * as Sidebar from '~/components/sidebar';
3</script>
4
5<Sidebar.Provider>
6	<Sidebar.Root>
7		<Sidebar.Content>
8			<Sidebar.Group>
9				<Sidebar.GroupLabel>Application</Sidebar.GroupLabel>
10				<Sidebar.GroupContent>
11					<Sidebar.Menu>
12						<Sidebar.MenuItem>
13							<Sidebar.MenuButton>Home</Sidebar.MenuButton>
14						</Sidebar.MenuItem>
15					</Sidebar.Menu>
16				</Sidebar.GroupContent>
17			</Sidebar.Group>
18		</Sidebar.Content>
19	</Sidebar.Root>
20	<main>
21		<Sidebar.Trigger />
22	</main>
23</Sidebar.Provider>