Thanks for your interest in contributing! This document explains our workflow so your changes can land smoothly.
We use two GitHub repositories:
| Repo | Purpose |
|---|---|
| peterdrier/Humans | QA / staging — auto-deploys on push to main |
| nobodies-collective/Humans | Production |
All changes go through QA before reaching production. Do not open PRs directly against nobodies-collective/Humans — they will be redirected.
- Fork
peterdrier/Humans(not the upstream repo) - Create a feature branch from
main - Open a PR against
mainonpeterdrier/Humans - Your PR gets a preview environment at
https://{pr_number}.n.burn.camp - After review and QA, we promote tested changes to production via a separate upstream PR
- QA auto-deploys from
peterdrier/Humansvia Coolify - Preview environments are only provisioned for PRs on the QA repo
- We review, test, and batch changes before promoting to upstream
See the README for local setup instructions.
- Follow the conventions in
docs/architecture/coding-rules.md - Every new page must have a navigation link (no orphan pages)
- Use
nameof()and constants instead of magic strings - Use NodaTime for all date/time handling
- Use Font Awesome 6 for icons (not Bootstrap Icons)
- Use concise, descriptive commit messages focused on why, not what
- For PRs with multiple commits, we squash-merge on the QA repo
Open an issue on nobodies-collective/Humans or reach out in the project's communication channels.