Skip to content
TrademarkTrademark
Docs
Components

Timeline

Updated: September 21, 2026
View on GitHub

Timeline helps visualize sequences of events, process steps, or historical data. Configure items via an object array with simple props or custom React nodes.

It lays a sequence out down the page, one item after another. If you are building a video or audio editor, the component you want is Scrubber: a playhead over time, with stacked tracks of blocks that are selectable, movable and trimmable. The two share a name in spirit and nothing in purpose.

Basic usage

Use label and description props for quick setup.

Alignment

Control timeline alignment with the alignment prop. Use left or right for different layouts.

Sizes

Control size with the size prop: xs, s, m, l or xl.

Marker

Customize the marker with the marker prop.

States

Visual feedback with different marker states: default, active, success, and danger.

Extra content

Extend the label and description with custom React nodes. Use the children prop with additional content to extend the layout.

Row

Set direction="row" to lay the steps out horizontally.

API reference

Timeline

Type
Default
itemsrequired
The events, in order.
TimelineItem[]—
alignment
Which side of the line the content sits on.
leftright
left
size
Scale of the markers and text.
xllmsxs
m
…and every FlexProps propinherited—
direction
columnrowcolumn-reverserow-reverse
column

TimelineItem

Type
Default
label
ReactNode—
description
ReactNode—
state
defaultactivecompletederror
default
marker
ReactNode—
children
React.ReactNode—
Edit this page on GitHub