A Flutter app implementing the Nguemba traditional 8-day cycle calendar from Bamougoum village, West Region of Cameroon
# Mungoum — Calendrier Nguemba
A Flutter app implementing the **Nguemba traditional 8-day cycle calendar** from Bamougoum village, West Region of Cameroon (Bamiléké territory).
---
## Features
- **Today's Nguemba day** — displayed on the home screen with market badge
- **Monthly calendar** — full grid with the Nguemba cycle for every day
- **Day detail** — name, aliases, market status, cultural content
- **The 8 days** — complete cycle reference (Fessâ · Fessap · Scheidâ · Nduchu · Djola'a · Mumetè · Mametè · Kuétsit)
- **FR / EN** — automatic language detection, English fallback
- **Dark mode** — follows system setting
- **100 % offline** — no backend, no API, no data collection
---
## Stack
| | |
|---|---|
| Flutter | 3.27.1 |
| Dart | 3.6.0 |
| Android | AGP 8.3.2 · Gradle 8.7 · Java 17 · Kotlin 1.9.25 |
| Min SDK | Android 5.0 (API 21) |
### Key packages
| Package | Purpose |
|---|---|
| `go_router ^14.6.2` | Navigation — 6 flat routes |
| `google_mobile_ads ^5.1.0` | AdMob banners (Home + Calendar) |
| `flutter_localizations` + `intl ^0.19.0` | FR / EN localization |
| `google_fonts ^6.2.1` | Playfair Display (titles) + Inter (UI) |
| `url_launcher ^6.3.1` | Donation link (About screen) |
| `package_info_plus ^8.0.0` | App version from pubspec |
---
## Calendar Algorithm
Anchor verified against the official Nguemba calendar PDF:
- **2025-01-01 = Fessâ** (index 0)
- Formula: `idx = ((delta % 8) + 8) % 8` where `delta = (date − anchor).inDays`
- The `+8` handles Dart's negative modulo for dates before 2025
- Dates are normalized to UTC midnight before computing delta
### The 8 days
| # | Name | Market |
|---|---|---|
| 1 | Fessâ | — |
| 2 | Fessap | — |
| 3 | Scheidâ (Cheidâ) | Grand Marché |
| 4 | Nduchu | — |
| 5 | Djola'a (Djedjuku'u) | — |
| 6 | Mumetè | — |
| 7 | Mametè | Petit Marché |
| 8 | Kuétsit | — |
---
## Project Structure
```
lib/
core/
config/ # AdConfig — test/prod AdMob IDs via kDebugMode
theme/ # AppColors + buildL …