Community
Contributing
How to contribute to Piyaz through code, docs, and community.
Contributing
The canonical contributing guide lives in the Piyaz repository. This page summarizes the essentials.
Full details: CONTRIBUTING.md on GitHub
Prerequisites
| Dependency | Purpose |
|---|---|
| Bun v1.0+ | JavaScript runtime and package manager |
| Docker and Compose | Runs PostgreSQL for local development |
Workflow
- Fork and clone the repository.
- Copy
.env.local.exampleto.env.localand fill in your keys. - Install dependencies:
bun install - Start Postgres and push the schema:
bun run db:setup - Start the dev server:
bun run dev
Before submitting a PR
Run all checks locally:
bun run lint
bun run typecheckBoth must pass. CI runs them automatically on every PR.
PR process
- Create a feature branch from
main. - Keep changes focused: one concern per PR.
- All PRs require a review and must pass CI before merging.
- Squash merge is the only merge strategy.
Commit format
<type>: <short description>Examples: fix: resolve rate limiter timing on 429, feat: add task dependency visualization
Related policies
- Code of Conduct: Contributor Covenant v2.1
- Security Policy: report vulnerabilities via GitHub private disclosure, not public issues
- Licensing: by submitting a PR, you agree your contribution may be distributed under both AGPL-3.0 and the commercial license