Skip to content

Contributing

AstorisTheBrave edited this page Sep 4, 2026 · 2 revisions

Contributing

Contributions are welcome. The canonical guide is CONTRIBUTING.md in the repository; this page is a quick orientation.

Before you start

  • Search existing issues and discussions.
  • For anything non-trivial, open an issue or discussion first so we can agree on the approach. Small fixes can go straight to a pull request.
  • Please only submit code you understand and have actually run.

Scope

Monitoring, reliability, privacy, and a native Android experience come first. Common monitor and maintenance management is implemented; broad Kuma server administration and raw configuration editors remain out of scope. If in doubt, ask.

Conventions

  • Kotlin and Jetpack Compose (Material 3). Match the existing style; do not restyle existing UI without discussion.
  • Layered and reactive: keep Uptime Kuma's protocol quirks in the network adapter; repositories expose StateFlows; Compose renders them.
  • Conventional Commits (feat:, fix:, chore:, docs:, ...). Maintainers prepare changelogs and releases manually from reviewed history.
  • ASCII punctuation in committed files (use -). Enable the shared hook: git config core.hooksPath scripts/hooks.
  • Tests and lint must pass: ./gradlew :app:testDebugUnitTest :app:lintDebug.

Pull requests

Keep them focused (one logical change), fill in the template, and say how you tested it (including the device or emulator and Android version if UI is affected).

Security

Do not open public issues for vulnerabilities. See the Security Policy and the Security summary.

Clone this wiki locally