Contributing¶
Contributions of all skill levels are welcome, whether reporting a bug, testing functionality, improving the documentation, or adding a model. Please read the Code of Conduct.
Report bugs and suggest improvements¶
Use the issue queue and the bug or feature templates. If you are new to contributing, look for issues labelled good first issue; these are reserved for human learning without AI tools.
Code and documentation¶
- Fork and clone the repository, then create a branch for your changes.
- Follow Developer setup for tools and test commands, or Run locally for the full stack.
- Keep changes focused, add tests for new behaviour, and run the relevant tests and checks before opening a pull request.
- Open a pull request explaining what changed and how you tested it. Declare your AI assistance level (0–5) in the PR template.
Documentation lives in docs/; improvements follow the same pull request process.
If you need help contributing, ask in HOT Slack's #geospatial-tech-and-innovation channel.
AI tool usage¶
You may use AI tools to assist your contributions. You are fully responsible for everything you submit.
- Understand it: You must be able to explain every line of your code.
- Test it: AI-generated code must pass all tests and security checks.
- Disclose it: Pick an AI assistance level (0–5) in the PR template. If nobody has read the result, declare level 5 and open the PR as a draft.
- Own it: You are the author. If a reviewer asks why, you answer.
AI tools must not be used to fix issues labelled good first issue. These exist for human learning.
See the AI-assisted coding guide for the full policy.
Contributing a model¶
See Contributing a model.
Releases¶
- Choose the next version with Commitizen (
cz bump). - Merge develop → stage and open a PR from stage → main.
- Test at https://stage.ai.hotosm.org.
- Merge to main, publish the GitHub release (vX.Y.Z), and wait for the API and frontend images to publish.
- Then update chart/Chart.yaml on develop with new version numbers.
- When the push is made, a chart will be build and production deployment made automatically.
See Infrastructure and deployment for details, GitHub releases for release notes, and the Roadmap for shipped capabilities.