Inspiration
Urban Waste Manager
Inspiration
Urban waste management is a problem that almost everyone experiences, yet very few systems treat it as a transparent, verifiable, and data-driven process.
In many cities, reporting waste issues is fragmented, slow, and often untraceable: citizens submit complaints but rarely know what happens next.
The inspiration behind Urban Waste Manager was to design a system that treats waste cleanup as a traceable workflow, not just a complaint:
- A citizen reports an issue with proof
- A driver is assigned and navigates to the location
- Cleanup is verified with visual evidence
- Administrators can monitor performance and quality in real time
The project was built during the Gemini Hackathon (Google DeepMind) with the goal of solving a real-world civic problem using clean system design and future-ready AI integration.
What I Learned
This project pushed me beyond writing isolated features and into system-level thinking.
Key learnings include:
- Designing role-based domain models (User / Driver / Admin) with clear responsibilities
- Building secure REST APIs using Spring Boot and JWT authentication
- Managing media-backed workflows, where images are first-class data, not attachments
- Ensuring data consistency across layers (UI → DTO → Entity → Database → Analytics)
- Thinking in terms of operational metrics, not just CRUD endpoints
I also learned how small frontend–backend mismatches (such as missing enum fields or misaligned payloads) can silently break core features, and how to debug these issues systematically by tracing the full data flow.
How the Project Was Built
Architecture Overview
Urban Waste Manager follows a clean, modular architecture:
- Backend: Spring Boot REST API
- Database: PostgreSQL with JPA/Hibernate and Flyway migrations
- Authentication: JWT-based role-aware security
- Frontend: Thymeleaf (Admin & User dashboards)
- Mobile: Flutter (Driver & User apps) (soon it will be published on GitHub)
Each role interacts with the system differently:
- Users report waste issues with category selection, location, and photo proof
- Drivers receive assigned tasks, navigate via map, and submit cleanup proof
- Admins manage assignments, verify results, and monitor system metrics
Workflow Design
The core waste event lifecycle is:
REPORTED → ASSIGNED → IN_PROGRESS → COMPLETED → VERIFIED
This explicit state machine ensures:
- No task is completed without proof
- No verification happens without review
- Every action is traceable
Challenges Faced
1. Data Integrity Across the System
One major challenge was ensuring that critical domain fields (such as report category) were consistently propagated across:
- User UI
- API requests
- Backend DTOs
- Database entities
- Admin dashboards and metrics
Fixing this required disciplined debugging and alignment of enums, payloads, and rendering logic.
Urban Waste Manager was developed with support from Gemini 3, used as an engineering copilot during the hackathon.
Gemini 3 helped refine the system architecture, validate the role-based workflow (User / Driver / Admin), and review critical backend decisions such as JWT security, DTO–entity alignment, and state transitions.
It was especially useful in identifying frontend–backend mismatches (enums, payloads, missing fields) that could silently break core features, and in suggesting safer patterns for media upload and verification flows.
Beyond implementation, Gemini 3 also supported product thinking, helping shape a realistic AI roadmap focused on image verification, task optimization, and analytics — without compromising MVP correctness.
2. Secure Media Handling
Handling photo uploads safely and efficiently was non-trivial.
Instead of uploading images directly through the API, the system uses token-based / presigned upload flows, ensuring:
- Reduced backend load
- Secure access
- Verifiable linkage between reports and media
3. Balancing MVP Scope vs Realism
During a hackathon, it’s tempting to oversimplify.
A constant challenge was deciding:
- What must be correct now (security, workflows, data integrity)
- What can be improved later (advanced analytics, AI automation)
Future Improvements (AI Integration)
The project is currently being prepared for production deployment with AI-powered enhancements:
- Image verification: Automatically detect whether uploaded photos actually contain trash or litter, reducing false or spam reports
- Automatic driver assignment: Optimize task allocation based on location, availability, and workload
- Advanced analytics: Detect hotspots, inefficiencies, and anomalous patterns
These improvements aim to reduce manual administrative work and move the platform toward a smart, semi-autonomous urban service system.
Final Thoughts
Urban Waste Manager is more than a reporting app — it is an exploration of how backend architecture, clear workflows, and verifiable data can improve public services.
The project strengthened my ability to think like a system designer and backend architect, not just a feature implementer, and laid a solid foundation for future AI-driven civic technology.
Built With
- docker
- gemini3
- java
- postgresql
- railway
- springboot
- thymeleaf
Log in or sign up for Devpost to join the conversation.