Team Update Feed
A changelog feed where each entry is credited to the team member who shipped it, with their avatar, name, and role alongside a short write-up and a list of tagged changes. Good for engineering blogs and release pages that want a human byline on every update.
Docs
Installation
A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its avatar, avatar-initials, badge dependencies and any missing npm packages, and installs them straight into your project.
npx shadcn add https://staaarter.com/r/team-update-feed.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/changelog/changelog17.tsx instead.
Usage
The file also exports changelog17Demo, 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 { Changelog17, changelog17Demo } from "@/components/blocks/changelog/changelog17"; export default function Page() { return <Changelog17 {...changelog17Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| heading | string | "Team updates" | Section heading. |
| description | string | "What our engineers shipped, in their own words." | Section intro text. |
| entries | Changelog17Entry[] | none | Author-attributed changelog entries, newest first. |
| className | string | none | Extra classes for the outer section element. |
Types
type Changelog17ChangeType = "added" | "changed" | "fixed" | "removed"; type Changelog17Change = { type: Changelog17ChangeType; text: string; }; type Changelog17Entry = { id: string; version?: string; date: string; author: { name: string; role: string; avatar?: { src: string; alt: string }; }; heading: string; description: string; changes: Changelog17Change[]; tags?: string[]; };
Behavior notes
- Purely presentational: no interactive state, no backend calls. All content (author, entries, tags) is static demo data passed via props.
- Each author's avatar falls back to initials built from their name via initialsFromName when no avatar image is supplied, matching the About team-grid pattern.
- Change type is mapped to a fixed badge style: added uses the default badge, changed uses secondary, fixed uses outline, and removed uses destructive, consistently across every entry.
- version and tags are both optional per entry; an entry with neither still renders cleanly with just its author, heading, description, and change list.
More Changelog Blocks
View all →Split Milestone Changelog
Two-column release entries pairing milestone context with highlights and metrics.
Changelog Release Feed
Release feed cards with aligned change-type labels and an optional CTA per card.
Grouped Changelog Board
Releases grouped under bold month headings with aligned version and description columns.
Milestone Changelog Timeline
Vertical timeline of releases with a connecting line, version badges, and tone-coded change types.
Minimal Text Changelog
Ultra-plain, text-only changelog with no badges, cards, or borders.
Categorized Release Notes
Per-release changes grouped into Added, Changed, and Fixed sub-sections.