WFP logoDesign System

A flexible list item component for displaying content with media, titles, descriptions, and actions.

Sarah Johnson

Product Designer at TechCorp

Michael Chen

Senior Developer at Innovation Labs

Emma Williams

Marketing Manager at Creative Studio

Installation

pnpm dlx shadcn@latest add https://designsystem.wfp.org/r/item.json

Usage

import {
  Item,
  ItemActions,
  ItemContent,
  ItemDescription,
  ItemGroup,
  ItemMedia,
  ItemSeparator,
  ItemTitle,
} from "@/components/ui/item";
<ItemGroup>
  <Item>
    <ItemMedia variant="icon">
      <IconComponent />
    </ItemMedia>
    <ItemContent>
      <ItemTitle>Title</ItemTitle>
      <ItemDescription>Description text</ItemDescription>
    </ItemContent>
    <ItemActions>
      <Button>Action</Button>
    </ItemActions>
  </Item>
</ItemGroup>

Examples

Variants

The Item component supports three visual variants: default, outline, and muted.

Marketing campaign

Active project with 12 files

Brand assets

Design resources and logos

Archived documents

Moved to archive last month

API reference

Item

The main container for an item.

PropTypeDefaultDescription
variant"default" | "outline" | "muted""default"Visual style of the item
size"default" | "sm""default"Size of the item
asChildbooleanfalseRender as child element
classNamestring-Additional CSS classes

ItemGroup

Container for multiple items with list semantics.

PropTypeDefaultDescription
classNamestring-Additional CSS classes

ItemMedia

Container for icons, images, or avatars.

PropTypeDefaultDescription
variant"default" | "icon" | "image""default"Style of the media container
classNamestring-Additional CSS classes

ItemContent

Container for the main content (title and description).

PropTypeDefaultDescription
classNamestring-Additional CSS classes

ItemTitle

The title or primary text of the item.

PropTypeDefaultDescription
classNamestring-Additional CSS classes

ItemDescription

Supporting text or description for the item.

PropTypeDefaultDescription
classNamestring-Additional CSS classes

ItemActions

Container for action buttons or interactive elements.

PropTypeDefaultDescription
classNamestring-Additional CSS classes

ItemHeader

Optional header section for the item.

PropTypeDefaultDescription
classNamestring-Additional CSS classes

ItemFooter

Optional footer section for the item.

PropTypeDefaultDescription
classNamestring-Additional CSS classes

ItemSeparator

Visual separator between items.

PropTypeDefaultDescription
classNamestring-Additional CSS classes