Animated Sidebar

Preview

People

Wednesday, July 29

Good morning, Ava.

Your workspace stays in place while the navigation folds down to a focused icon rail.

Active view

People

Install

Add it with the shadcn CLI, or copy the source manually.

$ bunx --bun shadcn add @beui/animated-sidebar

API Reference

AnimatedSidebarProvider

open?
boolean
Default—
defaultOpen?
boolean
Defaulttrue
onOpenChange?
((open: boolean) => void)
Default—
openMobile?
boolean
Default—
defaultOpenMobile?
boolean
Defaultfalse
onOpenMobileChange?
((open: boolean) => void)
Default—
style?
SidebarProviderStyle
Default—
className?
string
Default—

AnimatedSidebarMenuSubButton

icon?
ReactNode
Default—
href?
string
Default—
isActive?
boolean
Defaultfalse
disabled?
boolean
Defaultfalse
closeOnSelect?
boolean
Defaulttrue
target?
"_blank" | "_self" | "_parent" | "_top"
Default—
rel?
string
Default—
onSelect?
(() => void)
Default—
className?
string
Default—

AnimatedSidebarMenuButton

icon?
ReactNode
Default—
badge?
ReactNode
Default—
href?
string
Default—
isActive?
boolean
Defaultfalse
ariaExpanded?
boolean
Default—
disabled?
boolean
Defaultfalse
closeOnSelect?
boolean
Default—
target?
"_blank" | "_self" | "_parent" | "_top"
Default—
rel?
string
Default—
onSelect?
(() => void)
Default—
className?
string
Default—

AnimatedSidebar

className?
string
Default—
variant?
"inset" | "sidebar" | "floating"
Defaultsidebar
side?
"left" | "right"
Defaultleft
collapsible?
"none" | "icon" | "offcanvas"
Defaulticon
ariaLabel?
string
DefaultSidebar
panelClassName?
string
Default—

AnimatedSidebarTrigger

className?
string
Default—

AnimatedSidebarClose

className?
string
Default—

AnimatedSidebarRail

className?
string
Default—

AnimatedSidebarInset

className?
string
Default—

AnimatedSidebarHeader

className?
string
Default—

AnimatedSidebarContent

className?
string
Default—

AnimatedSidebarFooter

className?
string
Default—

AnimatedSidebarGroup

className?
string
Default—

AnimatedSidebarGroupLabel

className?
string
Default—

AnimatedSidebarGroupContent

className?
string
Default—

AnimatedSidebarMenu

className?
string
Default—

AnimatedSidebarMenuItem

className?
string
Default—

AnimatedSidebarMenuSub

className?
string
Default—
open
boolean
Default—

AnimatedSidebarMenuSubItem

className?
string
Default—

Composition

Compose navigation groups inside the sidebar and place the application surface in the sibling inset.

AnimatedSidebarProvider
├── AnimatedSidebar
│   ├── AnimatedSidebarHeader
│   ├── AnimatedSidebarContent
│   │   └── AnimatedSidebarMenu
│   ├── AnimatedSidebarFooter
│   └── AnimatedSidebarRail
└── AnimatedSidebarInset

Note: AI Sidebar composes the shell with editable projects, folders, files, and bookmarks.

How it works

An application sidebar is the responsive shell around persistent navigation. It coordinates desktop collapse, mobile presentation, nested destinations, and the content inset without owning the data rendered inside those regions.

Updated