Follow these steps in order when creating a new release.
- Ensure you're on the
mainbranch - Pull latest changes:
git pull - Ensure working directory is clean:
git status
Edit packages/asterui/package.json and increment the patch version (e.g., 0.12.88 → 0.12.89).
Edit packages/asterui/CHANGELOG.md and add an entry for the new version with a summary of changes.
Update relevant docs in packages/docs/src/content/docs/ (English + localized versions in es/, fr/, pt/, zh/).
If components were added/removed:
README.md (root):
- Update component counts ("100+ components", "101 components")
packages/docs/public/llms.txt:
- Update component count in the Overview section
- Add/remove components from the appropriate category list
npx pnpm run sync-prefixed # Syncs source + version, builds prefixed package
npx pnpm run sync-icons-prefixed # Only if icons changedThen verify all packages build clean:
cd packages/asterui && npx vite build # Main package
cd packages/docs && npx pnpm run build # Docs site (also syncs changelog)git add -A
git commit -m "v0.12.89: summary of changes"
git pushgh release create vX.Y.Z --title "vX.Y.Z" --notes "Release notes here"Or create via GitHub web UI at https://github.com/edadma/asterui/releases/new
npx pnpm --filter asterui publish --access public
npx pnpm --filter @aster-ui/prefixed publish --access publicOnly publish packages with source changes. If only asterui changed, skip prefixed (unless it was synced with new changes). Icons packages only need publishing if icons source changed:
npx pnpm --filter @aster-ui/icons publish --access public
npx pnpm --filter @aster-ui/icons-prefixed publish --access publicDeploy the docs site so the version badge and changelog are up to date.
- Verify the release appears on GitHub
- Verify npm package version:
npm view asterui version - Update downstream projects (e.g., roamer):
npm update asterui
If you created a release but forgot the changelog:
- Update the changelog
- Commit and push the change
- Move the tag to the new commit:
git tag -d vX.Y.Z git push origin :refs/tags/vX.Y.Z gh release delete vX.Y.Z --yes gh release create vX.Y.Z --title "vX.Y.Z" --notes "Release notes"
If the build fails, fix the issue before committing. Don't commit a broken build.
The sync-prefixed script copies the version from the main package. If you bump the version after syncing, re-run npx pnpm run sync-prefixed.
Use npx pnpm as a prefix for all pnpm commands if pnpm isn't installed globally.