Adventureland Registry

Item Header Blocks

A collection of composable header primitives for item detail pages — navigation bar, title/meta layout, cover image, and project meta grid.

ItemHeaderBlocks exports five composable components that together build a full item-detail page header. They are designed to be stacked: ItemHeaderBlocks provides the top navigation bar, ItemHeaderLayout renders the title and right-hand metadata columns, and CoverImageBlock / ProjectMetaBlock fill in visual and project-context sections.

Installation

npx shadcn@latest add @adv/item-header-blocks

Usage

import {
  ItemHeaderBlocks,
  ItemHeaderLayout,
  CoverImageBlock,
} from '@/components/ui/ItemHeaderBlocks';

<ItemHeaderBlocks
  defaultBackPath="/work"
  backButtonText="Back to work"
  breadcrumb={[{ label: 'Acme' }, { label: 'Case Study' }]}
  rightSideContent="Published Jan 2025"
>
  <ItemHeaderLayout
    title="Redesigning the checkout flow"
    subtitle="A four-week sprint to cut drop-off by 30%."
    role="Product Designer"
    projectType="Product Design"
    stage="Shipped"
    timeline="4 weeks"
    deliverables={['Research', 'Prototypes', 'Final spec']}
  />
  <CoverImageBlock image="/cover.jpg" />
</ItemHeaderBlocks>

Example

Acme Corp
/
Case Study
Jan 2025

Redesigning the checkout flow

A four-week sprint to cut drop-off by 30%.

ROLE
Product Designer
PROJECT TYPE
Product Design
STAGE
Shipped
TIMELINE
4 weeks

ItemHeaderBlocks

Top navigation bar with optional back button, breadcrumb, and right-side content slot.

PropTypeDefaultDescription
childrenReactNodeContent rendered below the nav bar.
classNamestring""Extra classes on the outer wrapper.
rightSideContentReactNodeContent rendered in the top-right area (e.g. publish date).
backButtonTextstringLabel for the back button. Renders no back button if omitted.
defaultBackPathstringFallback path for the back button. Renders no back button if omitted.
backButtonIdstringid passed to the inner BackButton.
breadcrumbBreadcrumbItem[]Array of { label, icon? } items rendered as a breadcrumb pill.

ItemHeaderLayout

Title block with a right-hand metadata column grid.

PropTypeDefaultDescription
titleReactNodeMain heading. Required.
subtitlestringSubheading below the title.
rolestringDisplays under "ROLE".
projectTypestringDisplays under "PROJECT TYPE".
stagestringDisplays under "STAGE".
timelinestringDisplays under "TIMELINE".
deliverablesstring[]List of deliverables shown under "DELIVERABLES".

CoverImageBlock

Full-width background-image banner. Renders nothing if image is omitted.

PropTypeDefaultDescription
imagestringURL of the cover image.

ProjectMetaBlock

Legacy grid of project type, stage, and deliverables — kept for back-compat with older detail pages.

PropTypeDefaultDescription
stagestringProject stage label.
deliverablesstring[]List of deliverable strings.
projectTypestringProject type label.

ItemHeaderBlocksWithNavigation

Convenience wrapper around ItemHeaderBlocks that exposes backPath instead of defaultBackPath (sugar for static page use).

PropTypeDefaultDescription
backPathstringForwarded as defaultBackPath on ItemHeaderBlocks.
backButtonTextstringLabel for the back button.
breadcrumbBreadcrumbItem[]Breadcrumb items.
rightSideContentReactNodeTop-right content slot.
childrenReactNodeForwarded children.
classNamestringExtra classes.

On this page