Important

This is development branch for Changesets v3. For the v2 code, check out the maintenance/v2 branch.

Changesets banner

A tool to manage versioning and changelogs
with a focus on monorepos

Read the docs to learn more

Open on npmx.dev View changelog pkg.pr.new

Changesets is designed to help manage and describe changes, all the way through to publishing. It lets contributors declare how their changes should be released, and it’ll handle updating package versions, changelogs, and publishing based on the provided changesets.

Changesets has a focus on solving these problems for monorepos, keeping packages that rely on each other up to date, as well as making it easy to make changes to groups of packages. Conceptually, the workflow is also beneficial for single package repos.

Visit https://changesets.dev to learn more.


Summary

Versioning + changelog management with a monorepo focus (TypeScript/npm ecosystem, changesets.dev docs): contributors write a markdown changeset file per PR declaring bump type + release notes; versioning, CHANGELOG.md and publishing consume the accumulated changesets — explicit intent instead of deriving releases from commit messages.

Learnings

  • Complements rather than replaces git-cliff (OSS): git-cliff derives the changelog from conventional-commit history (works on any repo, zero workflow overhead); changesets collects intent at PR time (monorepo-aware, drives publishing). The ‘changelog decision moves to commit time vs PR time’ axis from the Golden repo note.

Gotchas

  • (none yet)

Hands-on

(research only)