‮Skip to content‬
uiify

Item

‮A list row that pairs leading media and content with metadata and an action.‬

‮Browsers‬
Chrome 123+Firefox 121+Safari 17.5+
‮Tier‬
0
‮Forced layout budget‬
0 ms
‮Axe budget‬
0
‮SSR compatible‬
‮Yes‬
‮Published contract‬
‮Test harness‬

‮Playground‬

Item

  • Mina Chen
    Design · Updated today
  • Sam Rivera
    Engineering · Updated yesterday

‮Examples‬

Recent projects

Omit media and actions when a plain project name and its metadata are enough; use links only when a real destination exists.

  • Project Atlas
    Private project · Updated 2 hours ago
  • Q3 launch
    Shared with 4 people · Updated yesterday
import { Item, ItemContent, ItemMetadata } from "@gunkin/uiify";

export default function Example() {
  return (
    <ul>
      <Item>
        <ItemContent>Project Atlas</ItemContent>
        <ItemMetadata>Private project · Updated 2 hours ago</ItemMetadata>
      </Item>
      <Item>
        <ItemContent>Q3 launch</ItemContent>
        <ItemMetadata>Shared with 4 people · Updated yesterday</ItemMetadata>
      </Item>
    </ul>
  );
}

‮API‬

Item

‮Prop‬‮Type‬‮Default‬‮Description‬
childrenReactNode—‮Media, primary content, metadata, and optional actions.‬
className / style / ref / native li propsnative li props—‮Native list-item props, styles, events, and ref are forwarded.‬
renderReactElement | ((props, state) => ReactElement)—‮Replace the rendered element while keeping behavior and accessibility wiring.‬

ItemMedia

‮Prop‬‮Type‬‮Default‬‮Description‬
childrenReactNode—‮Content for this presentational item part.‬
renderReactElement | ((props, state) => ReactElement)—‮Replace the rendered element while keeping behavior and accessibility wiring.‬

ItemContent

‮Prop‬‮Type‬‮Default‬‮Description‬
childrenReactNode—‮Content for this presentational item part.‬
renderReactElement | ((props, state) => ReactElement)—‮Replace the rendered element while keeping behavior and accessibility wiring.‬

ItemMetadata

‮Prop‬‮Type‬‮Default‬‮Description‬
childrenReactNode—‮Content for this presentational item part.‬
renderReactElement | ((props, state) => ReactElement)—‮Replace the rendered element while keeping behavior and accessibility wiring.‬

ItemActions

‮Prop‬‮Type‬‮Default‬‮Description‬
childrenReactNode—‮Content for this presentational item part.‬
renderReactElement | ((props, state) => ReactElement)—‮Replace the rendered element while keeping behavior and accessibility wiring.‬

‮Keyboard‬

‮Key‬‮Action‬

‮Accessibility‬

‮Item renders a list item; place it inside a native ul or ol. Parts are presentational. Keep links and buttons as separate controls; do not make the entire row one link or button. For ItemMedia, choose meaningful alt text or an empty alt when the media is decorative.‬

‮Styling hooks‬

data-uiify-itemdata-uiify-item-mediadata-uiify-item-contentdata-uiify-item-metadatadata-uiify-item-actionsdata-part