
3D Extruded Buildings & Urban Footprints
Real-world 3D building extrusions with dynamic sunlight shadows, terrain DEM elevations, and pitch/bearing camera controls.
breadcrumbuiHierarchical wayfinding strip that shows a user’s position in a nested page tree. Built from `<BreadcrumbList>` and `<BreadcrumbItem>` primitives so you can drop in custom separators, dropdowns for collapsed parents, and ellipsis for overflow.
Also available for Vue ->$pnpm dlx shadcn@latest add https://uipkge.dev/r/react/breadcrumb.json$npx shadcn@latest add https://uipkge.dev/r/react/breadcrumb.json$yarn dlx shadcn@latest add https://uipkge.dev/r/react/breadcrumb.json$bunx shadcn@latest add https://uipkge.dev/r/react/breadcrumb.jsonnpx shadcn@latest add @uipkge-react/breadcrumbInstalls to:components/ui/breadcrumb/| Name | Type / Values | Default | Required |
|---|---|---|---|
asChildemitting an <a> — the React equivalent of reka-ui's as-child. | boolean | — | optional |
import * as React from 'react'
import { Slot } from '@radix-ui/react-slot'
import { ChevronRight, MoreHorizontal } from 'lucide-react'
import { cn } from '@/lib/utils'
const Breadcrumb = React.forwardRef<HTMLElement, React.ComponentPropsWithoutRef<'nav'>>(
({ className, ...props }, ref) => (
<nav ref={ref} aria-label="breadcrumb" data-uipkge="" data-slot="breadcrumb" className={className} {...props} />
),
)
Breadcrumb.displayName = 'Breadcrumb'
const BreadcrumbList = React.forwardRef<HTMLOListElement, React.ComponentPropsWithoutRef<'ol'>>(
({ className, ...props }, ref) => (
<ol
ref={ref}
data-uipkge=""
data-slot="breadcrumb-list"
className={cn(
'text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5',
className,
)}
{...props}
/>
),
)
BreadcrumbList.displayName = 'BreadcrumbList'
const BreadcrumbItem = React.forwardRef<HTMLLIElement, React.ComponentPropsWithoutRef<'li'>>(
({ className, ...props }, ref) => (
<li
ref={ref}
data-uipkge=""
data-slot="breadcrumb-item"
className={cn('inline-flex items-center gap-1.5', className)}
{...props}
/>
),
)
BreadcrumbItem.displayName = 'BreadcrumbItem'
export interface BreadcrumbLinkProps extends React.ComponentPropsWithoutRef<'a'> {
/** Render the child element as the link (merging props/styles) instead of
* emitting an <a> — the React equivalent of reka-ui's as-child. */
asChild?: boolean
}
const BreadcrumbLink = React.forwardRef<HTMLAnchorElement, BreadcrumbLinkProps>(
({ className, asChild = false, ...props }, ref) => {
const Comp = asChild ? Slot : 'a'
return (
<Comp
ref={ref}
data-uipkge=""
data-slot="breadcrumb-link"
className={cn(
'hover:text-foreground focus-visible:outline-ring rounded-sm underline-offset-4 transition-colors duration-200 hover:underline focus-visible:outline-2 focus-visible:outline-offset-2',
className,
)}
{...props}
/>
)
},
)
BreadcrumbLink.displayName = 'BreadcrumbLink'
const BreadcrumbPage = React.forwardRef<HTMLSpanElement, React.ComponentPropsWithoutRef<'span'>>(
({ className, ...props }, ref) => (
<span
ref={ref}
data-uipkge=""
data-slot="breadcrumb-page"
aria-current="page"
className={cn('text-foreground cursor-default font-normal', className)}
{...props}
/>
),
)
BreadcrumbPage.displayName = 'BreadcrumbPage'
const BreadcrumbSeparator = ({ children, className, ...props }: React.ComponentPropsWithoutRef<'li'>) => (
<li
data-uipkge=""
data-slot="breadcrumb-separator"
role="presentation"
aria-hidden="true"
className={cn('[&>svg]:size-3.5', className)}
{...props}
>
{children ?? <ChevronRight />}
</li>
)
BreadcrumbSeparator.displayName = 'BreadcrumbSeparator'
const BreadcrumbEllipsis = ({ children, className, ...props }: React.ComponentPropsWithoutRef<'span'>) => (
<span
data-uipkge=""
data-slot="breadcrumb-ellipsis"
className={cn('flex size-11 items-center justify-center', className)}
{...props}
>
{children ?? <MoreHorizontal className="size-4" aria-hidden="true" />}
<span className="sr-only">More</span>
</span>
)
BreadcrumbEllipsis.displayName = 'BreadcrumbEllipsis'
export {
Breadcrumb,
BreadcrumbList,
BreadcrumbItem,
BreadcrumbLink,
BreadcrumbPage,
BreadcrumbSeparator,
BreadcrumbEllipsis,
}
export {
Breadcrumb,
BreadcrumbList,
BreadcrumbItem,
BreadcrumbLink,
BreadcrumbPage,
BreadcrumbSeparator,
BreadcrumbEllipsis,
type BreadcrumbLinkProps,
} from './breadcrumb'
Raw manifest:https://uipkge.dev/r/react/breadcrumb.json