Breadcrumb
basecn/breadcrumbFreeComponent
Displays the path to the current resource using a hierarchy of links.
Live preview
live · rendered by the registry
Rendered by basecn on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://basecn.dev/r/breadcrumb.jsonSource
1import { useRender } from "@base-ui/react/use-render";2import { ChevronRight, MoreHorizontal } from "lucide-react";3import * as React from "react";45import { cn } from "@/lib/utils";67function Breadcrumb({ ...props }: React.ComponentProps<"nav">) {8 return <nav aria-label="breadcrumb" data-slot="breadcrumb" {...props} />;9}1011function BreadcrumbList({ className, ...props }: React.ComponentProps<"ol">) {12 return (13 <ol14 data-slot="breadcrumb-list"15 className={cn(16 "text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5",17 className18 )}19 {...props}20 />21 );22}2324function BreadcrumbItem({ className, ...props }: React.ComponentProps<"li">) {25 return (26 <li27 data-slot="breadcrumb-item"28 className={cn("inline-flex items-center gap-1.5", className)}29 {...props}30 />31 );32}3334function BreadcrumbLink({35 className,36 render = <a />,37 ...props38}: React.ComponentProps<"a"> & {39 render?: useRender.RenderProp;40}) {41 return useRender({42 render,43 props: {44 "data-slot": "breadcrumb-link",45 className: cn("hover:text-foreground transition-colors", className),46 ...props,47 },48 });49}5051function BreadcrumbPage({ className, ...props }: React.ComponentProps<"span">) {52 return (53 <span54 data-slot="breadcrumb-page"55 role="link"56 aria-disabled="true"57 aria-current="page"58 className={cn("text-foreground font-normal", className)}59 {...props}60 />61 );62}6364function BreadcrumbSeparator({65 children,66 className,67 ...props68}: React.ComponentProps<"li">) {69 return (70 <li71 data-slot="breadcrumb-separator"72 role="presentation"73 aria-hidden="true"74 className={cn("[&>svg]:size-3.5", className)}75 {...props}76 >77 {children ?? <ChevronRight />}78 </li>79 );80}8182function BreadcrumbEllipsis({83 className,84 ...props85}: React.ComponentProps<"span">) {86 return (87 <span88 data-slot="breadcrumb-ellipsis"89 role="presentation"90 aria-hidden="true"91 className={cn("flex size-9 items-center justify-center", className)}92 {...props}93 >94 <MoreHorizontal className="size-4" />95 <span className="sr-only">More</span>96 </span>97 );98}99100export {101 Breadcrumb,102 BreadcrumbEllipsis,103 BreadcrumbItem,104 BreadcrumbLink,105 BreadcrumbList,106 BreadcrumbPage,107 BreadcrumbSeparator,108};
What it pulls in
npm packages
Files it writes
More from basecn
All 56 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | basecn | Components | Free | 2 deps | |
| Alertalert | basecn | Components | Free | 1 dep | |
| Alert Dialogalert-dialog | basecn | Components | Free | 1 dep | |
| Aspect Ratioaspect-ratio | basecn | Components | Free | no deps | |
| Autocompleteautocomplete | basecn | Components | Free | 2 deps | |
| Avataravatar | basecn | Components | Free | 1 dep | |
| Badgebadge | basecn | Components | Free | 2 deps | |
| Buttonbutton | basecn | Components | Free | 2 deps |
