Di Project & Di Mobile
A smart waste management platform: a web dashboard, a mobile app, authentication and an AI recycling assistant.


The problem
Managing waste collection requires knowing where waste piles up and how to get there.
What I built
I led development: an authentication API in Spring Boot with PostgreSQL and Redis, a Django service that connects to Gemini, a React web dashboard with heat maps and a React Native mobile app.
Outcome
A university project led end to end, from backend to mobile app.
Decisions that mattered
- 01
Geographic data first
Leaflet heat maps and routing rely on the geolocation of trucks and collection points.
- 02
Authentication with verification
JWT plus an emailed verification code, stored in Redis with an expiry.
- 03
An AI assistant
A Django service with DRF connects to Gemini to answer recycling questions.
Technologies
- Spring Boot
- Django
- React
- React Native
- PostgreSQL
- Redis
- Gemini
C4 model. The pulsing line is the main path of a request.
Level 1 · who uses the system and what it connects to
Level 2 · the applications and data stores it is made of
Level 3 · the components inside the API
- Person
- System
- Container
- Database
- External
- Main path
- 01User
- 02Mobile app
- 03GPS service
- 04Web dashboard
- 05Heat maps