Sidebar

A composable, themeable and customizable sidebar component.

Installation

npx shadcn@latest add https://spoke.georgedrury.co.uk/r/sidebar

Lineage

Anatomy

import {
	Sidebar,
	SidebarContent,
	SidebarGroup,
	SidebarGroupContent,
	SidebarMenu,
	SidebarMenuItem,
	SidebarMenuButton,
	SidebarProvider,
	SidebarTrigger,
} from "@/components/ui/sidebar"

export default () => (
	<SidebarProvider>
		<Sidebar>
			<SidebarContent>
				<SidebarGroup>
					<SidebarGroupContent>
						<SidebarMenu>
							<SidebarMenuItem>
								<SidebarMenuButton />
							</SidebarMenuItem>
						</SidebarMenu>
					</SidebarGroupContent>
				</SidebarGroup>
			</SidebarContent>
		</Sidebar>
		<SidebarTrigger />
	</SidebarProvider>
)

Spoke utility classes

ClassFallback chainDescription
--sidebarvar(--background)Colour for sidebar
--sidebar-foregroundvar(--foreground)Text/icon colour for sidebar
--sidebar-primaryvar(--primary)Colour for primary sidebar variant
--sidebar-primary-foregroundvar(--primary-foreground)Text/icon colour for primary sidebar variant
--sidebar-accentvar(--accent)Colour for accent sidebar variant
--sidebar-accent-foregroundvar(--accent-foreground)Text/icon colour for accent sidebar variant
--sidebar-bordervar(--border)Border colour for sidebar
--sidebar-ringvar(--ring)Colour for ring sidebar variant