Contributing
Guidelines for contributing to ZeroStarter.
Overview
We welcome contributions to ZeroStarter! This guide outlines the process for contributing code, documentation, and other improvements to the project. Following these guidelines helps ensure a smooth review process and maintains code quality.
Contributing
Contributions welcome, any help is appreciated!
- Fork the repo and create a branch (use descriptive names, e.g.
feat/{name}orfix/{name}). - Make your changes, add tests if applicable, and run the checks:
bun audit --audit-level highbun run buildbun run check-typesbun run formatbun run lint
- Follow the repo conventions documented in
AGENTS.md(CLAUDE.mdis a symlink to it): use@/imports where applicable, never include "Co-authored-by" in commit messages, and keep comments on a single line. - Follow the existing code style and commit message conventions. Commits use Conventional Commits and are enforced by Commitlint via the
commit-msghook, so use one of the types accepted by@commitlint/config-conventional(feat,fix,docs,style,refactor,perf,test,chore,ci,build,revert) described in Code Quality. - Open a PR against the
canarybranch (the default development branch) describing the change, motivation, and any migration notes; link related issues. - For breaking changes or large features, open an issue first to discuss the approach.
- By contributing you agree to the MIT license and the project's Code of Conduct.
Open your PR against the canary branch (the default development branch), not main.
The dependency audit runs first where it runs: bun audit --audit-level high is the first CI gate (.github/workflows/auto-check-build.yml), ahead of build, check-types, format, and lint. As a pre-push check (lefthook.yml) it is scoped to the canary branch only (only: ref: canary), so pushing a feature branch skips it locally; CI runs it regardless.
Merged changes flow from canary to main through the release process. See Release Management for how versions and changelogs are cut.
Thank you for helping improve ZeroStarter!
License
This project is licensed under the MIT License.