Expandable Tabs

Icon tab bar where the active tab expands to a labelled pill, with a panel above that morphs height and slides content direction-aware on switch.

Preview

Install

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

$ bunx --bun shadcn add @beui/expandable-tabs

API Reference

items
{}
value?
string | null

Active tab id, or null/undefined for the closed (bar-only) state.

defaultValue?
string | null
null
onValueChange?
((id: string | null) => void)
className?
string
classNames?
ExpandableTabsClassNames

Keep in mind

Some components on this site are inspired by or recreated from existing work across the web. I'm not here to take credit; just to learn, experiment, and sometimes push things a bit further. If something looks familiar and I forgot to mention you, reach out and I'll fix that right away.

Updated