Search

Search documentation

Sidebar

A composable, themeable and collapsible sidebar component.

Installation

›pnpm dlx shadcn@latest add @evolphin/sidebar

Usage

import { SidebarProvider, SidebarTrigger } from "@/components/ui/sidebar";
import { AppSidebar } from "@/components/app-sidebar";
<SidebarProvider>
  <AppSidebar />
  <main>
    <SidebarTrigger />
    {children}
  </main>
</SidebarProvider>

Structure

A sidebar is composed of the following parts:

  • SidebarProvider: Handles collapsible state.
  • Sidebar: The main container.
  • SidebarHeader, SidebarContent, SidebarFooter: Sticky header/footer and scrollable content.
  • SidebarGroup: Section within content.
  • SidebarMenu: List of navigation items.

Examples

Simple Sidebar

API Reference

SidebarProvider

PropTypeDefaultDescription
defaultOpenbooleantrueDefault open state.
openboolean-Controlled open state.
onOpenChange(open: boolean) => void-Open state change handler.
PropTypeDefaultDescription
side`"left" \"right"`"left"
variant`"sidebar" \"floating" \"inset"`
collapsible`"offcanvas" \"icon" \"none"`

SidebarMenuButton

PropTypeDefaultDescription
isActivebooleanfalseWhether the button is active.
variant`"default" \"outline"`"default"
size`"default" \"sm" \"lg"`
tooltip`string \TooltipContentProps`-

On this page