# Publishing vanikey to crates.io
## Setup (one-time)
1. Add your crates.io API token as a repository secret named `CARGO_REGISTRY_TOKEN` in GitHub Settings > Secrets and variables > Actions
## Releasing
1. Bump `version` in `Cargo.toml`
2. Commit and push to `main`
3. Go to Actions > Release > Run workflow
The workflow will:
- Read the version from `Cargo.toml`
- Check the tag doesn't already exist
- Run tests
- Dry-run publish
- Tag the commit as `v<version>`
- Publish to crates.io
- Create a GitHub release with auto-generated notes