Thank you for contributing.
- Be respectful and constructive in all discussions.
- Keep changes focused and easy to review.
- Prefer small pull requests over very large ones.
- Follow the Code of Conduct.
- Clone the repository.
- Install required dependencies (Qt 6, CMake, Ninja, and related dev tools).
- Make
build.shexecutable if needed:
chmod +x ./build.sh- Run a clean build:
./build.sh --clean- Create feature branches from
main. - Use clear branch names, for example:
feature/settings-uifix/qml-runtime-crash
- Write commit messages in imperative style:
fix: include SegmentedOptionButton in qml resourcesci: add semver tag sanitization
Before opening a pull request, run:
CODE_QUALITY=ON FORMAT_CHECK=ON ./build.sh --cleanAlso run tests locally when possible:
BUILD_TESTS=ON ./build.sh --clean- Build passes locally
- Tests pass locally (or explanation provided)
- Formatting/lint checks pass
- New behavior is documented where relevant
- PR description explains what changed and why
When reporting a bug, include:
- Steps to reproduce
- Expected behavior
- Actual behavior
- Logs or screenshots when helpful
- Environment details (OS, architecture, Qt version)
Keep documentation under docs/ (except root README.md, which is intentionally minimal).