Contributing to Orbit
Thanks for helping make local development easier.
Orbit is still being hardened for 1.0. Before starting a large change, open an issue describing the user problem and proposed behavior so the design can be discussed before implementation. Small fixes and documentation improvements can go directly to a pull request.
Development setup
The required tools and build commands are documented in Installation and development.
pnpm --dir ui install --frozen-lockfile
make build
make testDuring implementation, run the narrowest relevant sociable test. After a coherent user-visible change is complete, run make test. Run make preflight once before committing that complete change; it is the same source and contract gate used by CI. make test-journeys exercises the built binary through real Git, process, and Docker boundaries. Use make lint for the stricter Go lint pass.
Pull requests
- Keep each pull request focused on one user-visible problem.
- Add tests that prove the behavior, including failure and recovery paths.
- Prefer end-to-end journeys and sociable domain tests over tests coupled to private helpers. See Testing strategy.
- Update English and Traditional Chinese documentation together when both versions exist.
- Preserve the
orbit.cli.v1JSON contract and keep destructive operations explicit. - Do not include credentials, private project names, customer data, or generated local state.
Project conventions are in Code conventions and architecture context is in Architecture. Website preview, link validation, navigation, and deployment are documented in Documentation website.
By participating, you agree to follow the Code of Conduct. Security reports must follow SECURITY.md, not a public issue.