shadcn.io is an independent project built on shadcn/ui
The trail reads Home, then a folder button, then Components, then Breadcrumb as the current page. The folder opens Documentation, Themes, and GitHub. The button is named Show sections.
Use it when the collapsed levels must stay reachable. An ellipsis is enough if they can be dropped. Sibling pages that are one value fit a Select. In React, Ark UI does not fill the menu from the route.
Installation
Anatomy

Usage
<Breadcrumb>
<BreadcrumbList>
<BreadcrumbItem>
<BreadcrumbLink asChild>
<Link href="/">Home</Link>
</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<Menu positioning={{ placement: "bottom-start" }}>
<MenuTrigger asChild>
<button
aria-label="Show sections"
className="flex items-center gap-1"
type="button"
>
<FolderIcon aria-hidden="true" className="size-4" />
</button>
</MenuTrigger>
<MenuContent>
<MenuGroup>
<MenuItem value="documentation">Documentation</MenuItem>
<MenuItem value="themes">Themes</MenuItem>
<MenuItem value="github">GitHub</MenuItem>
</MenuGroup>
</MenuContent>
</Menu>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<BreadcrumbLink asChild>
{/* The rest of the file is under Installation. */}FAQ
How is the menu built?
Menu wraps a MenuTrigger and a MenuContent with three MenuItems, each with a value. positioning with placement: "bottom-start" opens it under the folder, aligned to its start.
How is the folder button named?
Its only child is a FolderIcon, hidden from assistive tech, so the button carries aria-label="Show sections". Without it the button would have no name.
Do the menu items navigate?
Not in the demo: they are plain items. Make each one a link to its section, or handle the selection and route from there.
How is the trail announced?
Breadcrumb renders a nav labeled breadcrumb around an ordered list, so screen readers announce a breadcrumb landmark and the number of items. Home and Components are read as links.
API Reference
Breadcrumb
Sets asChild. The rest is on the Breadcrumb page.
Menu
Sets positioning, placement, bottom-start, asChild, value="documentation" and value="themes". The rest is on the Menu page.


