MindeesUI
ComponentsDisplay

Timeline

Vertical activity feed with a coloured dot, connecting rail, optional time and description, and per-item semantic tone.

Timeline renders an array of events as a vertical sequence. Each row shows a small status dot, a connecting rail to the next item, and a stack of title, optional time, and optional description. The dot colour reflects the item's tone.

Import

import { Timeline } from '@mindees/ui';

Usage

<Timeline
  items={[
    { title: 'Order placed', time: '09:12', tone: 'primary' },
    { title: 'Packed', time: '11:48', description: 'Warehouse A' },
    { title: 'Shipped', time: '14:20', tone: 'success' },
    { title: 'Delayed', time: '—', tone: 'warning', description: 'Carrier rerouting' },
  ]}
/>

Props

PropTypeDefaultDescription
itemsreadonly TimelineItem[]Ordered list of events. Top to bottom matches chronological order. Required.

TimelineItem shape

FieldTypeDefaultDescription
titleReactNodePrimary label. Strings render as medium-weight text; nodes render as-is.
timestringOptional timestamp rendered as a muted caption below the title.
descriptionReactNodeOptional supporting text. Strings render as secondary captions.
tone'neutral' | 'success' | 'warning' | 'danger' | 'primary''neutral'Status dot colour. neutral uses the strong border token.

Accessibility

The outer container uses accessibilityRole="list". Each row is non-semantic at the wrapper level so screen readers traverse the title, time, and description text in order. Tone is conveyed visually only — include status context in the title or description when it carries meaning.

On this page