Appearance
Versioning And Releases
Specra uses Changesets and GitHub Actions for versioning and changelog updates.
Current release posture
The first public release target is 0.1.0.
That means:
- the project is pre-1.0
- breaking changes are still possible
- release notes should still be clear and intentional
Local workflow
When a change should be reflected in release notes:
bash
pnpm changesetThen answer the prompt and commit the generated file in .changeset/.
GitHub workflow
Changesets is configured locally in .changeset/, and the repository now includes the baseline workflows:
CIVersioningDocs
CI
Should run on pull requests and pushes to main:
pnpm buildpnpm lintpnpm test
Versioning
Should run on pushes to main and use Changesets to:
- detect unreleased changesets
- create or update a version PR
- update package versions
- update changelog entries
What to do after creating the GitHub repo
- Set the default branch to
mainif it is not already. - Push the repository contents.
- Verify that GitHub Actions are enabled.
- Add
NPM_TOKENto repository secrets for publishing. - Enable GitHub Pages with GitHub Actions as the source.
- Merge a PR with a sample changeset to confirm the versioning flow works.
Notes
The repository now includes the minimum local setup for npm publishing:
- public package manifests
- per-package README files
- Changesets config
Before the first public release, you still need:
- the final GitHub repository URL
- an
NPM_TOKENin the publishing environment - GitHub Pages enabled if you want the docs site published immediately