Changelog process
How releases are recorded with Changesets and rendered on the site.
The template keeps a human-readable changelog in CHANGELOG.md, managed by
Changesets, and renders it at
/changelog.
Recording a change#
pnpm changeset
Choose the bump type (patch, minor, major) and write a short summary. A Markdown file is created
in .changeset/; commit it with your pull request. Multiple changesets can accumulate before a
release.
Cutting a release#
The release workflow (.github/workflows/release.yml) runs on pushes to main. When changesets
are present it opens a “Version Packages” pull request that:
- bumps
versioninpackage.json, - prepends the new release to
CHANGELOG.md, - deletes the consumed changesets.
Merging that pull request tags the release. Run the same steps locally with
pnpm changeset:version and pnpm changeset:tag if you prefer.
Rendering#
src/content/loaders/changelog.ts parses CHANGELOG.md into one collection entry per
## <version> heading. An optional date in parentheses after the version (for example
## 1.2.0 (2026-10-01)) is shown next to the release. Each release is rendered through Astro’s
Markdown pipeline, so links, code and lists work as they do elsewhere.
Version in the health endpoint#
/api/health reports the version from package.json to administrators and monitors, so a
deployment always identifies the release it was built from.