Staaarter

Large Version Changelog

A poster-style changelog where each release is anchored by an oversized version number rendered in a low-opacity, extra-large weight, with the date, heading, description, and tone-coded change tags flowing beside it in a fixed-width column layout.

By Staaarter Team
Changelog
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its badge dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/large-version-changelog.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/changelog/changelog12.tsx instead.

Usage

The file also exports changelog12Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.

import { Changelog12, changelog12Demo } from "@/components/blocks/changelog/changelog12";

export default function Page() {
  return <Changelog12 {...changelog12Demo} />;
}

Props

PropTypeDefaultDescription
headingstring"Release history"Section heading above the release list.
descriptionstringundefinedShort intro paragraph under the heading.
releasesRelease[]noneReleases rendered top to bottom, most recent first.
classNamestringnoneExtra classes for the outer section element.

Types

type ChangeType = "added" | "changed" | "fixed" | "removed";

interface Change {
  type: ChangeType;
  label: string;
  text: string;
}

interface Release {
  version: string;
  date: string;
  heading: string;
  description: string;
  changes: Change[];
}

Behavior notes

  • The version number is the primary visual anchor, rendered at `text-6xl sm:text-7xl` in a low-opacity foreground tone (`text-foreground/10`) in a fixed-width column, with the rest of the entry's content flowing beside it via `flex gap-6 items-start`.
  • The change tags follow this category's tone convention: added uses Badge variant default, changed uses secondary, fixed uses outline, removed uses destructive; each entry supplies its own display label so text like "Security" or "Deprecated" can appear while still mapping to a consistent color.
  • Fully static server component: no photos, no client state, no pagination.