How I Built an Open-Source Waste Management Portal for an Indian Municipality
Description and use
SmartGarbage is an open‑source portal that lets Indian citizens check waste collection schedules, report missed pickups with GPS verification, view transparent dashboards, and earn green points for segregation.
Problem
Citizens in rural India lack visibility into collection schedules, cannot report missed pickups, and have no insight into how waste tax funds are used.
Outcome
SmartGarbage enabled citizens to check schedules, report missed pickups with GPS verification, view transparent dashboards, and earn green points, while providing the municipality with proactive overflow alerts and a bilingual, accessible interface.
Workflow
- 1. Set up Flask backend with PostgreSQL (Supabase).
- 2. Implement citizen authentication and CRUD for reports.
- 3. Extract EXIF GPS from uploaded photos and cross‑check with device location.
- 4. Add service worker with cache‑first for static assets, stale‑while‑revalidate for pages and CDN resources.
- 5. Integrate Flask‑Babel for English/Telugu toggle.
- 6. Add dark mode, font scaling, high‑contrast mode for WCAG 2.1 AA compliance.
- 7. Train scikit‑learn model to predict bin overflow and trigger dispatch alerts.
- 8. Deploy Dockerized app on Render.
- 9. Publish code on GitHub (MIT) and host live demo.
Evidence
When a citizen reports a missed pickup, the app extracts EXIF GPS data from the photo and cross‑checks it against the submitted device location.
The app uses a service worker with 3-tier caching: static assets, HTML pages, CDN resources.
Uses scikit-learn to predict when bins will overflow, enabling proactive dispatch.
- Record date: 2026-09-07T03:36:26.134Z