Logo Lanfrica

A-USB/water-equity-app

Domain:

environment and energy

Record type:

software
Creator:
A-U
Host:
A water management system in order to improve how water is distributed in Rwanda # Mira — Water Equity Monitor (pilot) A closed, two-portal system between **Sector officials** and **WASAC** — no public or citizen layer. Users pick their role up front, then sign in or create an account for that role. Sectors report their own water availability; WASAC sees every district, drills into its sectors, and ranks everything by a computed need score. - **Backend:** Express + a JSON file as the data store (no database setup needed). - **Frontend:** React (Vite) with a sidebar shell and recharts for trend charts. Talks to the API through a dev proxy. - **Auth:** username/password, self-service signup for both roles, sessions kept in memory on the server. Good enough for a local pilot — see "Before this goes anywhere real" below. ## Flow 1. **Landing page** — explains what Mira is and what each portal does, before asking anyone to sign in. 2. **Role select** — "Executive Secretary" or "WASAC". 3. **Sign in or sign up** for that role. Sector signup also registers the sector itself (name, district, population) in one step. 4. **Sector portal** — an official sees only their own sector: current status, a form to submit a new report, and their report history. 5. **WASAC portal (dashboard)** — districts shown as cards with aggregated stats (avg availability across the district's sectors, total population, how many sectors have reported, an average need score, and how many need attention). Click a district to drill into its sectors, paginated 6 at a time. 6. **Sector drill-down** — click any sector (from a district view or the "Needs attention" panel) to open its full report history plus a trend chart of availability over time. 7. **Stale-report alerts** — a sector with no report in over 14 days is flagged "Stale"; over 30 days (or never reported) is flagged "Needs attention." Shows on the sector card itself, rolls up into a count on each district card, and surfaces as a ranked national list at the top of the WASAC dashboard. ## API - `POST /api/auth/login` — …