Timeline

Used to display a list of events in chronological order

Product Shipped
13th May 2021

We shipped your product via FedEx and it should arrive within 3-5 business days.

Order Confirmed
18th May 2021
Order Delivered
20th May 2021, 10:30am

Usage

import { Timeline } from "chakra-ui-solid";
<Timeline.Root>
  <Timeline.Item>
    <Timeline.Connector>
      <Timeline.Separator />
      <Timeline.Indicator />
    </Timeline.Connector>
    <Timeline.Content>
      <Timeline.Title />
      <Timeline.Description />
    </Timeline.Content>
  </Timeline.Item>
</Timeline.Root>

Examples

Sizes

Use the size prop to change the size of the timeline.

S
sagecreated a new project
sagechanged status from In progress to Completed
S
sagecreated a new project
sagechanged status from In progress to Completed
S
sagecreated a new project
sagechanged status from In progress to Completed
S
sagecreated a new project
sagechanged status from In progress to Completed

Variants

Use the variant prop to change the variant of the timeline.

S
sagecreated a new project
sagechanged status from In progress to Completed
S
sagecreated a new project
sagechanged status from In progress to Completed
S
sagecreated a new project
sagechanged status from In progress to Completed
S
sagecreated a new project
sagechanged status from In progress to Completed

Content Before

Here’s an example of a timeline with content before the timeline indicator.

Nov 1994
1
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nov 2010
2
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nov 1994
1
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nov 2010
2
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nov 1994
1
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nov 2010
2
Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Alternating Content

Here’s an example of a timeline with alternating content.

Placed Order
Prepared Order
Order Delivered

Composition

Here’s an example of how to compose the timeline with other components to create a consistent-looking timeline.

Lucas Moras has changed3 labels onJan 1, 2024
Jenna Smith removedEnason Jan 12, 2024
Erica commentedon Jan 12, 2024
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore.

Props

Root

TimelineRootProps
PropDefaultType
showLastSeparatorfalse
ConditionalValue<boolean>

Whether the line continues past the last item. It sets `--timeline-separator-display` on the last item, which is the only thing that hides that item's separator.

size'md'
ConditionalValue<'sm' | 'md' | 'lg' | 'xl' | PresetVariant<'timeline', 'size'>>

The diameter of the indicator, the glyph inside it, and the title's type scale.

variant'solid'
ConditionalValue<'subtle' | 'solid' | 'outline' | 'plain' | PresetVariant<'timeline', 'variant'>>

How the indicator is filled — `solid` and `subtle` tint it, `outline` rings it, `plain` leaves it bare.

Plus HTMLChakraProps<"div"> — the whole style-prop surface and the DOM attributes of the element it renders, several hundred names listed as their sources rather than expanded — and the three every component takes: as, render and unstyled.