Skip to content

shadcn.io is an independent project built on shadcn/ui

Free

Breadcrumb with Dropdown (Home Icon) for Ark UI

A breadcrumb with a home icon, a folder menu of Documentation, Themes, and GitHub, then Components and Breadcrumb.

The root is a home icon, named Home for screen readers. A folder button opens Documentation, Themes, and GitHub. Components and Breadcrumb, the current page, follow it.

Use it when the root is an icon and the hidden levels must still open. An ellipsis is quieter if those levels can go. A single current section fits a Select. In React, Ark UI does not list the sections.

Preview

Preview width

Installation

Sign in to get your install command
Free with an account. It carries your token, so the CLI installs everything in one go.
Use email insteadNo credit card

Anatomy

Breadcrumb anatomy: link, ellipsis, separator, item, page

Usage

<Breadcrumb>
  <BreadcrumbList>
    <BreadcrumbItem>
      <BreadcrumbLink asChild>
        <Link aria-label="Home" href="/">
          <HomeIcon aria-hidden="true" className="size-4" />
        </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 />
{/* 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 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.

How do the links go through my router?

BreadcrumbLink takes asChild, and the demo puts the Next.js Link inside it. Put your router's link there instead.

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.