Sauti Mtaani Nairobi
Structured resident feedback for the Office of the Nairobi Woman Representative
A bilingual (English and Kiswahili) resident-feedback platform built for the Office of the Nairobi Woman Representative, Hon. Esther Passaris. Residents give consent and answer short ward-level polls. Staff see only aggregate, privacy-protected results, and AI suggestions always need a person to approve them.
At a glance
- Status
- Live web app
- Type of work
- Civic platform
- Context
- Built for the Office of the Nairobi Woman Representative
- Categories
- Civic & Social Impact · Web & SaaS · Applied AI & Agents
- Source code
- Not listed
Technology
Problem
Residents rarely have a structured, privacy-respecting way to tell their representative’s office what matters in their ward. Staff need aggregate insight without handling individual personal data.
Who it’s for
Nairobi residents, in English or Kiswahili, and authorised staff in the representative’s office.
What I built
- Consent and privacy notices, then a short registration (ward, age band, gender) and a 2–4 question poll.
- Privacy-safe live results for residents, and aggregate-only dashboards for staff.
- Suppression thresholds so small groups are never shown in a way that could identify someone.
- Digest-based anti-abuse, so duplicate submissions can be detected without storing raw identifiers.
- A resident FAQ grounded in published facts.
- Optional Groq-based assistance with local PII scrubbing before text leaves the server, plus quotas and rate limits.
- Theme and moderation suggestions that are advisory only. AI never silently labels a submission or changes public content.
Architecture
- Resident appEnglish/Kiswahili interface; consent, registration and short polls.
- ServerValidation, anti-abuse digests, quotas and rate limits.
- DataSupabase PostgreSQL with Row Level Security.
- ReportingAggregates with suppression thresholds; staff dashboards never show individual responses.
- AI assistPII scrubbed locally → Groq → suggestion queue → staff approval.
Engineering challenges
Keeping humans in charge
AI produces suggestions, not decisions. Authorised staff approve any suggested tag or moderation action before it takes effect.
Privacy in small wards
Suppression thresholds hide breakdowns that are too small to publish safely.
Abuse prevention without tracking people
Digest-based checks limit repeat submissions without keeping raw identifiers.
Quality and trust
- CI gates for type checking, linting, Vitest tests and a production build (project README).
- Supabase Row Level Security; local PII scrubbing; quotas and rate limits on AI features.
Limitations
- Results come from a self-selected group of residents and are not a scientific poll.
- Taking part has no effect on eligibility for bursaries, programmes or other services.
- AI suggestions are advisory and only take effect after staff review.