Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Minimal Changelog Block for React

The barest release list for a solo developer's app: six rows between hairlines, each a mono version, one sentence and the day it shipped, with a single outline word on the rows that need one.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

A minimal changelog for React with Base UI, written for Quietlog, a fictional journaling app made by one developer. A compact start-aligned header carries the title and one sentence. Under a rule with + marks, six releases sit as plain rows between hairlines, with no frame and no icons: the version in mono at the start, one sentence as the row's heading, and the day it shipped at the end. A single outline word (Fixed, Security or Deprecated) appears only on the rows where the sentence doesn't already say what kind of change it is, so the word carries the meaning and nothing depends on colour. On a phone the version and the date share a line above the sentence. The page's rails and top rule come from the Guides spine, so it lines up with its neighbours in a stack. It's built from Guides and Badge, with CSS transitions for the entrance and your theme's tokens for every colour. For solo projects, docs sites and small apps that want a changelog nobody has to read twice. The releases are example data.

FAQ

How do I change the releases?

Edit RELEASES at the top of the file, newest first. Each release has a version, a date as an ISO day ("2026-09-24"), one sentence and an optional kind word; leave kind empty for a row that needs none. The day on screen ("Sep 24") is spelled out from the ISO day by a small helper, so it reads the same on the server and in every browser, and the time element keeps the machine-readable day with its year. Dates are fixed, never computed from today.

Why is there an outline word on only some rows?

Most changes in a small app are something new or something better, and the sentence says so. The word is for the rows where it adds something: a fix, a security change, a feature being retired. It is an outline badge with text only, no icon, so it reads in greyscale, in any theme and to a screen reader. If you would rather tag every row, give every release a kind.

Why is the sentence a heading?

Each row is a list item whose one sentence is its h3, so a screen reader user can jump from release to release by heading, and hears the sentence before the version. The version and the day are plain text beside it.

How does it fit on a phone and in a right-to-left layout?

Below md the version and the date share the first line and the sentence takes the full width under them, so nothing scrolls sideways at 320 pixels. In a right-to-left layout the date moves to the left end, the sentence stays right-aligned, and the version numbers stay left to right.

What moves, and what happens with reduced motion?

The header and the list fade up once on load, with CSS transitions. With reduced motion they are off and the block simply appears. The block has no state and nothing else moves.

  • Pro

    Quiet Mono Release Log

    Lists and timelines

    A quiet release log of five single mono lines: an inverted version chip, a plain date, a sigil and a word for the kind of change, and the change itself, between hairlines.

  • Pro

    Compact Badges Changelog

    Lists and timelines

    The eight latest releases of a ticketing tool as one dense framed table: a mono version badge, a type tag with an icon and a word, what changed and the day it shipped.

  • Pro

    Condensed Feed Changelog

    Lists and timelines

    Twelve releases of a news reader as a single-line ledger: the day, a type word, the headline and the version on one row, month rows between, and the older rows opening in place.

  • Pro

    Compact Timeline Changelog

    Lists and timelines

    The last three weeks of a time-tracking app on one thin rail: six releases of two small lines each, with the dot's shape (circle, diamond, square, ring) telling the kind and a one-line key.

  • Pro

    Release Timeline Changelog

    Lists and timelines

    A release timeline for an API client: a compact header with a Subscribe link, then the latest four releases on a hairline rail with dots, each with its version, date, type tags, a linked title and its notes, and View all releases at the foot.

  • Pro

    Grouped Date Changelog

    Lists and timelines

    Changes grouped by the day they shipped: each day has a drawn calendar tile (month, big day number, weekday) beside a dated heading and its changes with a type tag, a sentence and the release.