shadcn.io is an independent project built on shadcn/ui
The first crumb is a home icon, named Home for screen readers, with no visible word. Then Components, then Breadcrumb as the current page. A rounded border hugs the line. The box does not react on hover.
Use it when the root should be an icon and the trail should read as its own chip. A site menu is a Navigation Menu. In React, Ark UI does not know which page is current.
Installation
Anatomy

Usage
<Breadcrumb className="w-fit rounded-lg border px-3 py-2">
<BreadcrumbList>
<BreadcrumbItem>
<BreadcrumbLink asChild>
<Link aria-label="Home" href="/">
<HomeIcon aria-hidden="true" className="size-4" />
</Link>
</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<BreadcrumbLink asChild>
<Link href="/components">Components</Link>
</BreadcrumbLink>
</BreadcrumbItem>
<BreadcrumbSeparator />
<BreadcrumbItem>
<BreadcrumbPage>Breadcrumb</BreadcrumbPage>
</BreadcrumbItem>
</BreadcrumbList>
</Breadcrumb>FAQ
How is the border applied?
Breadcrumb takes w-fit rounded-lg border px-3 py-2. The nav becomes the box, and w-fit keeps it only as wide as the trail instead of the full row.
How is the home icon named?
The link to / holds only a HomeIcon at size-4, hidden from assistive tech, so the link carries aria-label="Home". Screen readers announce it as the Home link.
Which separator sits between the crumbs?
An empty BreadcrumbSeparator renders a chevron, hidden from assistive tech.
Does the box react on hover?
No. Only the links change, to the foreground color. The border and padding belong to the nav, which isn't a control.
API Reference
Breadcrumb
Sets asChild. The rest is on the Breadcrumb page.

