Skip to content
Anas edited this page Dec 17, 2025 · 42 revisions

Welcome to the Warnastrophy wiki!

Table of Contents

Conventions

Branch Convetions

Commit Conventions

Code Review Process

Merge & Conflict resolution

Organisation

Working method

Using the Scrum Board

  • Scrum : agile sprint management.
  • Product Owner and Scrum Master : 1 for each sprint, rotating roles in each sprint.
  • Maintainers : 3 coaches (Jérémy, Luna, Professor Candea).

Communication

  • Coach : Discord.
  • Team : WhatsApp canal.
  • Daily Scrum : 2 times a week on discord.

Contribution Process (CLI)

  • Pull Request : at least 1 review required.
  • Tests : all tests must pass with a minimal coverage of 80%.

Tools

  • SonarCloud : Code quality and coverage analysis.
  • CI/CD : Github Actions automation.

Actions

Build Signed Release APK
Automates the creation of a signed Android APK for production:

  • Triggered on push or manually.
  • Retrieves secrets (keystore, Firebase config, local properties).
  • Builds the signed APK with Gradle.
  • Uploads the APK as a downloadable artifact.

Android CI
Automates continuous integration on each PR or push on main and release branch:

  • Prepares the environment (JDK, caches, secrets).
  • Checks code formatting.
  • Builds the application.
  • Runs unit and instrumentation tests.
  • Generates and uploads the coverage report.
  • Sends results to SonarCloud for quality analysis.

Users

Warnastophy is intended for any user, but is especially useful for those living in dangerous areas or visiting risky places, such as climbing sites, off-piste zones, or regions affected by natural disasters.

Figma

Figma mockup

Architecture

Architecture Diagram

Hazard System Architecture

Danger Mode Architecture

Authentication Architecture

Hybrid Repositories Architecture

Speech-to-Text Service Architecture

Text-to-Speech Service Architecture

Credits

Some sections of this documentation were generated using ChatGPT and Claude, AI language models developed respectively by OpenAI and Anthropic, to improve readability and detail.

Clone this wiki locally