UILab

Item

A versatile component for displaying content with media, title, description, and actions.

Basic Item

A simple item with title and description.

Your profile has been verified.
"use client"

import {
  Button,
  Item,

Usage

import {
  Item,
  ItemActions,
  ItemContent,
  ItemDescription,
  ItemMedia,
  ItemTitle,
} from "uilab-core"
<Item>
  <ItemMedia variant="icon">
    <Icon />
  </ItemMedia>
  <ItemContent>
    <ItemTitle>Title</ItemTitle>
    <ItemDescription>Description</ItemDescription>
  </ItemContent>
  <ItemActions>
    <Button>Action</Button>
  </ItemActions>
</Item>

Item vs Field

Use Field if you need to display a form input such as a checkbox, input, radio, or select.

If you only need to display content such as a title, description, and actions, use Item.

Examples

Variants

Use the variant prop to change the visual style of the item.

Default Variant

Transparent background with no border.

Outline Variant

Outlined style with a visible border.

Muted Variant

Muted background for secondary content.

"use client"

import {
  Item,
  ItemContent,

Sizes

Use the size prop to change the size of the item. Available sizes are default, sm, and xs.

Default Size

The standard size for most use cases.

Small Size

A compact size for dense layouts.

Extra Small Size

The most compact size available.

import {
  Item,
  ItemContent,
  ItemDescription,
  ItemMedia,

Icon

Use ItemMedia with variant="icon" to display an icon.

Security Alert

New login detected from unknown device.

import {
  Button,
  Item,
  ItemActions,
  ItemContent,

Avatar

You can use ItemMedia with variant="avatar" to display an avatar.

AB
altanbgn

Last seen 5 months ago

ER
No Team Members

Invite your team to collaborate on this project.

import {
  Button,
  Item,
  ItemActions,
  ItemContent,

Image

Use ItemMedia with variant="image" to display an image.

Group

Use ItemGroup to group related items together.

s
shadcn

shadcn@vercel.com

m
maxleiter

maxleiter@vercel.com

e
evilrabbit

evilrabbit@vercel.com

"use client"

import {
  Avatar,
  AvatarFallback,

Use ItemHeader to add a header above the item content.

v0-1.5-sm
v0-1.5-sm

Everyday tasks and UI generation.

v0-1.5-lg
v0-1.5-lg

Advanced thinking or reasoning.

v0-2.0-mini
v0-2.0-mini

Open Source model for everyone.

"use client"

import Image from "next/image"
import {
  Item,

Use the render prop to render the item as a link. The hover and focus states will be applied to the anchor element.

"use client"

import {
  Avatar,
  AvatarFallback,

On this page