shadcn.io is not affiliated with official shadcn/ui
Dashboard Timeline Block for Radix UI
Forty release events with a band of four figures derived from them, category cells with their counts, and a scrolling rail grouped by day that reverses with a Newest first and Oldest first toggle.
Installation
Overview
Read a release's history and its numbers together with this dashboard timeline for React with Radix UI. It is written for Eventscope, a fictional project event-analytics tool. A hairline frame with a plus mark on each corner holds four figures worked out from the events (how many, the busiest day, the longest quiet gap and the median gap between events), then four category cells for builds, reviews, deploys and incidents with their counts on shared hairlines, and under them the forty events on a rail in a fixed-height region that scrolls, grouped under day heads. A toggle in the header reverses the rail, Newest first or Oldest first, and the status line says which day is at the top. It is built from Toggle Group and Guides with CSS for the rail. For release logs, incident reviews and any history where the shape of the activity matters. The events are example data.
FAQ
How do I change the events?
Edit LINES at the top of the file: one line per event with the UTC day and time, a category letter (b, r, d or i) and the words. The figures, the day heads and the category counts are all derived from those lines.
How are the figures worked out?
Events are sorted by time; the gaps are the minutes between consecutive events. The longest quiet gap is the largest one, the median is the middle one of the sorted gaps, and the busiest day is the day with the most events (the earliest wins a tie).
What stays in the page?
The order. Nothing is saved or sent. To make it real, load the events from your event store, group them on the server and keep the same derivations.
Does the panel change height when I reverse the order?
No. The rail lives in a region of fixed height that scrolls, and it starts at the top again whichever way you sort it.