This document describes the release workflow using Changesets, GitHub Actions, and npm.
- Repository has
NPM_TOKENconfigured in GitHub Actions secrets. - Branch protection is enabled for
mainwith required checks:Build And TypecheckSecret Detection (Gitleaks)
- You have publish permissions for
restyle-spriteson npm.
For every user-facing change, add a changeset in your PR:
cd restyle-sprites
pnpm changesetChoose the package (restyle-sprites), bump type (patch, minor, major), and write a short summary.
Commit the generated file in .changeset/ and open your PR.
On pull requests and pushes to main, CI runs:
- install dependencies
pnpm typecheckpnpm build- Gitleaks secret scan
PRs should not be merged unless all required checks are green.
After merging PRs with changesets into main, the Release workflow:
- creates or updates a Release PR
- bumps package version in
package.json - updates
CHANGELOG.md
When the Release PR is merged:
- package is published to npm
- published version matches the changeset bump
Usually not required because GitHub Actions handles this.
cd restyle-sprites
pnpm install
pnpm version-packages
pnpm release- Check that at least one
.changeset/*.mdfile exists inmain. - Verify
.github/workflows/release.ymlis present and enabled.
- Ensure
NPM_TOKENsecret exists in the repository. - Ensure token has permission to publish
restyle-sprites.
- Confirm package name is
restyle-sprites. - Confirm
publishConfig.accessispublic.
patch: bug fixes, docs-only behavioral clarifications, non-breaking internal improvementsminor: new backward-compatible featuresmajor: breaking API/CLI/config changes