ZeroStarter

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} or fix/{name}).
  • Make your changes, add tests if applicable, and run the checks:
    • bun audit --audit-level high
    • bun run build
    • bun run check-types
    • bun run format
    • bun run lint
  • Follow the repo conventions documented in AGENTS.md (CLAUDE.md is 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-msg hook, 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 canary branch (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.