GitHub Actions Workflows ​
This directory contains automated CI/CD workflows for the wizard-vite monorepo.
Workflows ​
1. CI (ci.yml) ​
Runs on every push to main/develop branches and on all pull requests.
Jobs:
- Lint - Runs Biome linter, Knip (unused deps), and Syncpack (version consistency)
- Type Check - Runs TypeScript type checking across all packages
- Build - Builds all packages and uploads artifacts
- Test - Runs tests on Node 18, 20, and 22
2. Publish (publish.yml) ​
Publishes packages to npm registry.
Triggers:
- GitHub Release published
- Manual workflow dispatch (allows selecting specific package)
Options:
package- Which package to publish (all, core, react, vue)tag- npm dist-tag (latest, next, beta)
Features:
- ✅ npm provenance support
- ✅ Runs tests before publishing
- ✅ Publishes with proper access control
- ✅ Creates summary in GitHub Actions
Required Secrets:
NPM_TOKEN- npm authentication token with publish access
3. PR Checks (pr-checks.yml) ​
Additional checks for pull requests.
Jobs:
- Bundle Size Check - Reports bundle sizes in PR
- Validate package.json - Ensures all package.json files are valid
- PR Labeler - Auto-labels PRs based on changed files
4. Release (release.yml) ​
Creates GitHub releases from git tags.
Tag Formats:
v*.*.*- Release all packages@gooonzick/wizard-core@*- Release core package only@gooonzick/wizard-react@*- Release React package only@gooonzick/wizard-vue@*- Release Vue package only
Features:
- ✅ Auto-generates release notes
- ✅ Marks pre-releases (beta, alpha, rc)
- ✅ Links to documentation
Setup Instructions ​
1. Configure npm Token ​
- Generate an npm access token at https://www.npmjs.com/settings/YOUR_USERNAME/tokens
- Select "Automation" token type
- Enable "Publish" permission
- Add the token to GitHub repository secrets:
- Go to repository Settings → Secrets and variables → Actions
- Create new secret named
NPM_TOKEN - Paste your npm token
2. Configure Codecov (Optional) ​
- Sign up at https://codecov.io
- Add your repository
- Get the upload token
- Add to GitHub secrets as
CODECOV_TOKEN
3. Enable GitHub Actions ​
Ensure GitHub Actions is enabled in repository Settings → Actions → General.
Publishing Workflow ​
Automated Publishing (Recommended) ​
Update version in package.json:
bash# For all packages pnpm version patch # or minor, major # For specific package cd packages/core pnpm version patchCreate and push a git tag:
bash# For all packages git tag v1.2.3 git push origin v1.2.3 # For specific package git tag @gooonzick/wizard-core@1.2.3 git push origin @gooonzick/wizard-core@1.2.3Create a GitHub Release from the tag
Publish workflow will automatically run
Manual Publishing ​
- Go to Actions → Publish to npm
- Click "Run workflow"
- Select package and npm tag
- Click "Run workflow"
Testing Locally ​
Before pushing, test your changes locally:
bash
# Run all CI checks
pnpm lint
pnpm typecheck
pnpm build
pnpm test
# Check for issues
pnpm knip
pnpm syncpack:lintWorkflow Status Badges ​
Add to your README.md:
markdown

[](https://codecov.io/gh/YOUR_USERNAME/wizard-vite)Troubleshooting ​
Publish fails with "need auth" ​
- Verify
NPM_TOKENsecret is set correctly - Ensure token has publish permissions
- Check token hasn't expired
Tests fail on specific Node version ​
- Check package.json engines field
- Update Node version matrix in ci.yml if needed
Bundle size check fails ​
- Ensure build completed successfully
- Check dist/ directories exist
- Install
bcif running locally:apt-get install bc
Best Practices ​
- Always run tests locally before pushing
- Use semantic versioning for releases
- Write meaningful commit messages for changelog generation
- Test workflows in a fork before merging to main
- Review bundle sizes in PR checks before merging