Shipped Building Next DeclinedPRO

A roadmap board of four hairline columns carrying state icons, running from what shipped through what is building to what was turned down, crediting the practice that asked where there was one.

Changelog29: Shipped Building Next Declined

A roadmap board of four hairline columns carrying state icons, running from what shipped through what is building to what was turned down, crediting the practice that asked where there was one.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Upgrade Now

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/changelog29?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/changelog29?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/changelog29.tsx plus the badge23 and button21 components it uses for the eyebrow and the action.

Quick start

The installed file exports changelog29Demo alongside the block: the exact props behind the preview above. Spread it to get a working board in one line.

tsx
import { Changelog29, changelog29Demo } from "@/components/beste/block/changelog29";

export default function RoadmapPage() {
  return <Changelog29 {...changelog29Demo} />;
}

Then replace the demo with your own props. Written out, a trimmed setup looks like this:

tsx
import { Changelog29 } from "@/components/beste/block/changelog29";

export default function RoadmapPage() {
  return (
    <Changelog29
      badge={{ label: "Where things stand" }}
      heading="Shipped, building, next, and the ones we said no to"
      description="The fourth column is the one nobody publishes."
      columns={[
        {
          label: "Shipped this quarter",
          summary: "Out and running in every practice.",
          state: "shipped",
          items: [
            {
              title: "Shared waiting list across sites",
              detail: "Eleven weeks of testing with three practices.",
              meta: "v3.4.0, 14 May",
              askedBy: "Asked for by Fenwick Group",
            },
          ],
        },
        {
          label: "Said no to",
          summary: "With the reasoning, so you can argue back.",
          state: "declined",
          items: [
            {
              title: "Editable audit log retention",
              detail: "An audit log you can shorten is not an audit log.",
              meta: "Declined 12 May",
            },
          ],
        },
      ]}
      footnote="Anything asked for by a named practice keeps that credit through to the release note."
      button={{ label: "Ask for something", href: "/feedback" }}
    />
  );
}

Props

PropTypeDefaultDescription
badge{ label: string }Eyebrow above the hairline rule, rendered through Badge23
headingstringSection heading in the left column of the header
descriptionstringSupporting paragraph, right-aligned from md up
columnsColumn[][]Board columns, each with its own state and items
footnotestringCredit policy beside the closing action
button{ label: string; href: string }Closing action
classNamestringExtra classes for the outer section
ts
type State = "shipped" | "building" | "next" | "declined";

type ActionLink = {
  label: string;
  href: string;
};

type Item = {
  title: string;
  detail: string;
  meta: string;
  askedBy?: string;
};

type Column = {
  label: string;
  summary: string;
  state: State;
  items: Item[];
};

Behavior notes

More Changelog blocks

View all Changelog
PRO

changelog20

Roadmap Status Changelog

Hybrid roadmap and changelog with shipped, in-progress, and planned items. Includes status dots, tags, and optional feature images.

PRO

changelog11

Two-Column Date Changelog

Minimal two-column layout with fixed-width date column on the left and version heading with change list on the right.

PRO

changelog9

Release Card Grid

Responsive card grid of releases with version badges, descriptions, and optional links. Great for browsable release archives.

PRO

changelog21

Kanban Board Changelog

Three-column kanban board grouping changes by type — Features, Fixes, and Improvements — with stacked cards.

PRO

changelog16

Visual Release Notes

Alternating split layout with feature screenshots on one side and release content on the other. Ideal for marketing-focused product update pages.

PRO

changelog3

Changelog Release Feed

Release feed cards with aligned change labels, summaries, and optional CTA buttons.