shadcn.io is not affiliated with official shadcn/ui
Platform Specific Changelog Block for React
A band of four tabs (Web, iOS, Android, API) with an entry count each, over the chosen platform's releases as rows that end the block, the first row applying to every platform.
Installation
Overview
A per-platform changelog for React with Base UI, written for Fourways, a fictional cross-platform task app. A compact header carries the title and one sentence. Under a band rule, a band of four tabs (Web, iOS, Android, API) runs from rail to rail, each tab with the number of entries it holds, and the chosen platform's releases sit under it as rows that end the block. A row gives the version and the day, one line saying what changed and a type tag, an outline badge with an icon and a word (New, Improved, Fixed, Deprecated). The release that applies to every platform is the first row of all four tabs and says so with a badge. Every platform's list sits unseen in the same cell, so changing tab never moves the page. On a phone the tab band scrolls sideways. It's built from Guides, Badge and Tabs, with CSS transitions for the entrance and your theme's tokens for every colour. For products that ship on several platforms on different schedules, and for SDK and API release pages. The releases are example data.
FAQ
How do I change the platforms and entries?
Edit PLATFORMS at the top of the file. A platform has an id, a name and its entries, newest first. An entry has a version, an ISO date, a kind, one text sentence and shared, true for the one that applies to every platform. EVERYWHERE is that entry, and it is placed first in each list. The count on each tab is the length of its list, so it stays true when you edit.
How do the tabs work?
They are the catalog's Tabs: arrow keys move between the tabs, Home and End go to the first and last, and the chosen tab's panel is the only one the reader can reach. A visually hidden polite line says which platform is showing and how many entries it has. Each tab's name includes its count ("Web 4 entries"), so the number is spoken with it.
Why does the page not move when I change tab?
Platforms have different numbers of entries, so every list is also laid out unseen in the same grid cell, and the tallest sets the cell's height. The unseen copies are hidden from assistive technology and the keyboard.
How are the change types told apart without colour?
Each type is an outline badge with an icon and the word: sparkles for New, a rising line for Improved, a wrench for Fixed and an archive box for Deprecated. The icons are decoration, so a screen reader hears the word.
Related
- Pro
Version Tabs Changelog
Filters and browsingAn app platform's last four versions as compact monospace chip tabs on a window's top edge, each panel listing its changes with type tags in two columns of cells, on a height that never changes.
- Pro
Filterable Changelog
Filters and browsingThe plainest filtered release list: one row of choices with counts (All, New, Improved, Fixed, Security) over nine releases, a live count of what is showing, and a height that never changes.
- Pro
Mobile App Changelog
Spotlights and mediaA split of three app builds and a greyscale drawn phone: choosing a build shows its What's new text on the phone and its notes, size and minimum system in an article beside it.
- Pro
SDK Versions Changelog
APIs and integrationsClient libraries in one tabbed window: a tab per language with its latest version, then that version large, its day, a support state as a shape and a word, the install command in a code region with a Copy button, and a table of the last three versions.
- Pro
Tabbed Window Uptime History
Incidents and uptimeA tabbed window of ninety-day uptime for an uptime monitor: one tab per service, a large uptime figure that rolls to the new service, a strip of ninety daily bars and a three-row table of incidents.
- Pro
Category Sections Changelog
Filters and browsingA changelog for a file organiser grouped under Added, Improved and Fixed headings, with a sticky index of the three sections beside them and every change tagged with the release it shipped in.