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
childrenReactNode—Content rendered below the nav bar.
classNamestring""Extra classes on the outer wrapper.
rightSideContentReactNode—Content rendered in the top-right area (e.g. publish date).
backButtonTextstring—Label for the back button. Renders no back button if omitted.
defaultBackPathstring—Fallback path for the back button. Renders no back button if omitted.
backButtonIdstring—id 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
titleReactNode—Main heading. Required.
subtitlestring—Subheading below the title.
rolestring—Displays under "ROLE".
projectTypestring—Displays under "PROJECT TYPE".
stagestring—Displays under "STAGE".
timelinestring—Displays under "TIMELINE".
deliverablesstring[]—List of deliverables shown under "DELIVERABLES".

CoverImageBlock

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

PropTypeDefaultDescription
imagestring—URL of the cover image.

ProjectMetaBlock

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

PropTypeDefaultDescription
stagestring—Project stage label.
deliverablesstring[]—List of deliverable strings.
projectTypestring—Project type label.

ItemHeaderBlocksWithNavigation

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

PropTypeDefaultDescription
backPathstring—Forwarded as defaultBackPath on ItemHeaderBlocks.
backButtonTextstring—Label for the back button.
breadcrumbBreadcrumbItem[]—Breadcrumb items.
rightSideContentReactNode—Top-right content slot.
childrenReactNode—Forwarded children.
classNamestring—Extra classes.

On this page