Timeline
A composable timeline component for displaying chronological events with multiple layout positions, marker variants, and custom icons.
Default
v1.0.0 Released
Initial stable release with core components and documentation.
v1.1.0 Released
Added Timeline, Empty, and DatePicker components.
v1.2.0 In Progress
Working on data table improvements and new chart components.
v2.0.0 Planned
Major update with design system overhaul and accessibility improvements.
Variants
Default
Neutral marker for standard events.
Primary
Highlighted marker for key events.
Success
Indicates a completed or successful event.
Warning
Highlights an event that needs attention.
Destructive
Signals an error or critical event.
With Icons
Pull Request Opened
feat: add timeline component (#142)
Code Review
2 comments from reviewers on styling approach.
CI Failed
Lint check failed due to unused import.
Changes Requested
Reviewer requested minor refactoring of utility functions.
Merged
All checks passed. Merged into main by @developer.
With Custom Marker
- MJ
Marcus Johnson merged a pull request
Refactored authentication module to support OAuth 2.0 providers.
- SC
Sarah Chen commented on an issue
Suggested a fix for the date picker timezone handling.
- AR
Alex Rivera opened a pull request
Added new chart components with responsive breakpoints.
- EP
Emma Patel deployed to production
Released v1.4.2 with accessibility improvements across all form components.
Right Aligned
Deployment Successful
Production build deployed to all regions.
Tests Passed
All 142 integration tests passed successfully.
Build Started
CI pipeline triggered by merge to main branch.
Alternate
Application Submitted
Your application was received and is under review.
Phone Screen
Initial call with the recruiting team completed.
Technical Interview
Passed the technical assessment with positive feedback.
Final Round
On-site interviews with the engineering team scheduled.
Offer Extended
Congratulations! An offer letter has been sent.
Center
Company Founded
Started with a small team of three in a garage.
Series A Funding
Raised $5M to scale the product and grow the team.
100K Users
Reached the first major milestone in user adoption.
Global Expansion
Launched in 12 new markets across Europe and Asia.
API Reference
TimelineRoot
Root container rendered as a semantic ordered list. Provides layout context to all child items.
| Prop | Type | Default | Description |
|---|---|---|---|
| position | 'left' | 'right' | 'alternate' | 'center' | 'left' | Controls the layout of content relative to the marker line. Left and right place all content on one side. Alternate switches sides for each item. Center uses a grid layout with content on both sides. |
| className | string | - | Additional CSS classes for the root ordered list |
| ...props | React.ComponentProps<"ol"> | - | Standard ordered list element props |
TimelineItem
Individual timeline entry rendered as a list item. Automatically receives position and index context from the parent TimelineRoot.
| Prop | Type | Default | Description |
|---|---|---|---|
| className | string | - | Additional CSS classes for the list item |
| ...props | React.ComponentProps<"li"> | - | Standard list item element props |
TimelineMarker
Visual indicator on the timeline line. Renders a colored dot by default, a custom icon, or fully custom content such as an avatar when children are provided.
| Prop | Type | Default | Description |
|---|---|---|---|
| children | React.ReactNode | - | Custom content to render instead of the default dot or icon. When provided, variant and icon props are ignored and no default styling is applied to the marker. |
| variant | 'default' | 'primary' | 'success' | 'warning' | 'destructive' | 'default' | Color variant of the marker circle. Ignored when children are provided. |
| icon | React.ReactNode | - | Custom icon to display inside the marker instead of the default dot. Ignored when children are provided. |
| className | string | - | Additional CSS classes for the marker element |
| ...props | React.ComponentProps<"div"> | - | Standard div element props |
TimelineContent
Wrapper for the main content of a timeline entry. Handles text alignment and spacing based on the timeline position.
| Prop | Type | Default | Description |
|---|---|---|---|
| className | string | - | Additional CSS classes for the content wrapper |
| ...props | React.ComponentProps<"div"> | - | Standard div element props |
TimelineSpacer
Empty flex spacer used with alternate and center positions to fill the opposite side of content.
| Prop | Type | Default | Description |
|---|---|---|---|
| className | string | - | Additional CSS classes for the spacer element |
| ...props | React.ComponentProps<"div"> | - | Standard div element props |
TimelineTitle
Bold title text for a timeline entry. Rendered as a paragraph element with semibold font weight.
| Prop | Type | Default | Description |
|---|---|---|---|
| className | string | - | Additional CSS classes for the title |
| ...props | React.ComponentProps<"p"> | - | Standard paragraph element props |
TimelineDescription
Secondary descriptive text for a timeline entry. Rendered in a smaller, muted style.
| Prop | Type | Default | Description |
|---|---|---|---|
| className | string | - | Additional CSS classes for the description |
| ...props | React.ComponentProps<"p"> | - | Standard paragraph element props |
TimelineTime
Semantic time element for displaying timestamps. Supports the native dateTime attribute for machine-readable values.
| Prop | Type | Default | Description |
|---|---|---|---|
| dateTime | string | - | Machine-readable date/time value for accessibility and SEO |
| className | string | - | Additional CSS classes for the time element |
| ...props | React.ComponentProps<"time"> | - | Standard time element props |