Breadcrumb
Navigation
Navigation breadcrumbs with pixel styling.
Import
import { PixelBreadcrumb, PixelBreadcrumbList, PixelBreadcrumbItem, PixelBreadcrumbLink, PixelBreadcrumbSeparator } from "@/components/ui/pixel-breadcrumb"Usage
Component Source
Copy and paste the following code into your project at /src/components/ui/pixel-breadcrumb.tsx
"use client";
import { ChevronRight, MoreHorizontal } from "lucide-react";
import * as React from "react";
import { cn } from "@/lib/utils";
const PixelBreadcrumb = React.forwardRef<
HTMLElement,
React.ComponentPropsWithoutRef<"nav"> & {
separator?: React.ReactNode;
}
>(({ ...props }, ref) => <nav ref={ref} aria-label="breadcrumb" {...props} />);
PixelBreadcrumb.displayName = "PixelBreadcrumb";
const PixelBreadcrumbList = React.forwardRef<
HTMLOListElement,
React.ComponentPropsWithoutRef<"ol">
>(({ className, ...props }, ref) => (
<ol
ref={ref}
className={cn(
"flex flex-wrap items-center gap-2 break-words text-sm text-black dark:text-white",
className,
)}
{...props}
/>
));
PixelBreadcrumbList.displayName = "PixelBreadcrumbList";
const PixelBreadcrumbItem = React.forwardRef<
HTMLLIElement,
React.ComponentPropsWithoutRef<"li">
>(({ className, ...props }, ref) => (
<li
ref={ref}
className={cn("inline-flex items-center gap-2", className)}
{...props}
/>
));
PixelBreadcrumbItem.displayName = "PixelBreadcrumbItem";
const PixelBreadcrumbLink = React.forwardRef<
HTMLAnchorElement,
React.ComponentPropsWithoutRef<"a"> & {
asChild?: boolean;
}
>(({ className, ...props }, ref) => {
return (
<a
ref={ref}
// ... (more code below)Accessibility
This component is built with accessibility in mind, including proper ARIA attributes, keyboard navigation, and focus management.