Inspiration
Street trash can be deadly. An estimated 400,000 to 1 million people in low- and middle-income countries die each year from diseases linked to mismanaged waste (Tearfund, 2019). Many countries have little funding for cleanup crews, which often operate on fixed routes, so the areas that need the most attention are ignored (UNEP, 2024). Optimizing routes can cut fuel costs and drive time by 10–20% (Ghana study). We built WasteGrid to combine these ideas so that cleanup efforts are sent to high-priority areas while staying within budget constraints, minimizing costs and maximizing impact.
What it does
Residents can take a photo of trash; the app tags it with its GPS location and sends the report. The AI backend checks photos for hazards and assigns a priority based on the type of trash it is. Cleanup organizers can then see reports and compute routes to preview an optimized plan before dispatching it to crews. Then, cleanup crews can follow their given route, clean up the trash, and submit a photo as evidence that the trash was cleaned. The community can see the report closed with proof.
How we built it
We built this using React Native (Expo), so residents can report, organizers can dispatch, and crews can follow routes all in one app. The backend uses a Supabase database, authentication, and private photo storage, with FastAPI on Render. The AI assessment is built with a single Grok vision call on a submitted photo through Chalk, and deterministic Python rules turn what it sees into a priority. We get real road travel times from OSRM, which builds routes greedily and then improves them with stop swaps and relocations. It balances three goals: getting high-priority trash collected sooner, keeping crew workloads even, and cutting total drive time.
Challenges we ran into
Deciding what factors to take into consideration while determining the priority algorithm for routing was a big challenge, as we needed to design a way to weight all factors that managed to make the highest impact most efficiently. Trusting the AI was another big factor, since we didn’t want a model deciding to send a crew into a chemical spill. The AI only describes what it sees; explicit rules and human review gates decide what gets dispatched. We also needed a way to spot duplicate reports, efficiently divide jobs to crews, and update GPS accordingly, which were big problems that took a lot of time to resolve.
Accomplishments that we're proud of
In one weekend, we were able to:
- Design a working end-to-end flow from resident report to crew dispatch to cleanup photo to resident confirmation
- Integrate AI photo assessment returning validated results in about 3 seconds
- Develop routing that uses real road travel times and considers priority to efficiently route crews.
- Create an app that has potential to make real impact on the world.
What we learned
We learned a lot about trade-offs. For example, routing required us to trade off priorities with what was available and how long it takes to get to a certain location. Using AI is not an easy solution to all problems (such as photo review); it still needs to be paired with human review and fixed rules. We also learned a lot about planning for failure, trying to make sure we accounted for all the edge cases we could.
What's next for WasteGrid
The goal would be to start working with a waste management company to get feedback on what they see as useful and what could make it more accessible for cleanup crews and organizers, as well as feedback from residents who use the app.
Built With
- chalk
- expo.io
- fastapi
- grok
- osrm
- photon
- python
- react-native
- supabase
- typescript
Log in or sign up for Devpost to join the conversation.