Context
Currently using lerna publish for releases. @changesets/cli is the community standard for independent-versioning monorepos and gives a much better release UX.
Benefits
- Per-package
CHANGELOG.md generated automatically
- PR-based release workflow (Changesets bot opens a 'Release PR' aggregating pending changes)
- Works natively with pnpm workspaces
- Integrates with GitHub Actions for automated npm publish
Changes required
pnpm add -Dw @changesets/cli
pnpm changeset init
- Add
.changeset/config.json
- Add
publish.yml GitHub Action (pairs with #[CI issue])
- Document the release process in
CONTRIBUTING.md