Skip to content
/ amanzi Public

**Amanzi** is a Flutter mobile app (Android & iOS) that turns South Africa's fragmented water data into one clear, beautiful, and genuinely useful experience.

License

Notifications You must be signed in to change notification settings

samaras/amanzi

Repository files navigation

Getting Started

Amanzi is a Flutter mobile app (Android & iOS) that turns South Africa's fragmented water data into one clear, beautiful, and genuinely useful experience.

Framework & Language Flutter 3.x with Dart, using a feature-first folder structure. Each feature (dams, rivers, rainfall, etc.) is fully self-contained with its own models, repository, and screen files - making the codebase easy to extend as live APIs become available.

Navigation go_router for declarative, URL-like routing with deep linking support - important for eventually sharing direct links to specific dam or river detail pages.

Maps flutter_map with OpenStreetMap tiles (no API key, no cost, works offline). Custom CustomPainter layers for catchment area polygons and color-coded river polylines. Dam markers are dynamically colored by level percentage - teal for healthy, amber for low, red for critical.

Charts fl_chart powers the historical dam level line charts, monthly rainfall bar charts, and the usage history graph. The dam detail screen supports switching between 1-year and 10-year data views with smooth animated transitions between datasets.

Usage Calculator Built with stateful widget steppers and a real-time litre accumulator. Toilet flush mode toggles between old (9L) and new (4.5L) cistern volumes. Shower time uses a Slider rather than a stepper since duration is continuous. Results are persisted locally with shared_preferences to show a 7-day usage history.

Self-Sufficiency Hub The rainwater harvesting calculator uses a simple formula: roof area (m²) × rainfall (mm) × 0.8 efficiency = litres collected. Users input their roof size and select their region's monthly rainfall to get a realistic monthly collection estimate - surprisingly powerful for planning tank sizing.

About

**Amanzi** is a Flutter mobile app (Android & iOS) that turns South Africa's fragmented water data into one clear, beautiful, and genuinely useful experience.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors