Inspiration

Food waste and food insecurity coexist, even in places like Evanston and Chicago. Restaurants throw away perfectly good food while food banks struggle to keep up. We realized this wasn’t a supply problem, but a coordination problem, and that existing solutions rely too much on manual effort from already busy restaurants.

What it does

RePlate automates food rescue from start to finish. Restaurants get a text asking if they have surplus food, reply naturally, and our system handles everything else. It parses the message, matches the food to real-time food bank needs, and dispatches a volunteer. Volunteers earn points that they can redeem at the same restaurants, creating a closed loop.

How we built it

We built RePlate using Next.js, Supabase, and Leaflet for real-time geographic maps. Next.js and Tailwind CSS provided a responsive, multi-role dashboard experience. Supabase handles our database, authentication, and live updates, ensuring volunteers see missions as soon as they are posted. Leaflet provides real-time mapping to visualize donor locations and food bank destinations. A Python FastAPI microservice acts as an expiry classifier, helping prioritize pickups based on food type and urgency. A deterministic routing engine matches donor supply with food bank demand based on proximity and need.

Challenges we ran into

The biggest challenge was managing the state synchronization across four distinct user roles (Restaurants, Food Banks, Volunteers, and Ops). Ensuring that a volunteer claiming a mission immediately updates the Ops dashboard and notifies the Restaurant required careful architecting of our Supabase real-time subscriptions. We also spent significant time refining the logic in our Python microservice to ensure food safety timelines were accurately estimated without manual overhead.

Accomplishments that we're proud of

We successfully built a fully working end-to-end system where a restaurant can post a donation and a volunteer can claim it in seconds. We are particularly proud of our incentive loop: restaurants donating food provide the rewards (tiers) that motivate volunteers, creating a self-sustaining community ecosystem.

What We Learned

We gained experience in multi-role system design and the importance of data integrity in logistics. We also learned the value of deterministic logic over AI for core routing—realizing that for community safety and reliability, clear rules and robust database schemas often outperform unpredictable LLM parsing.

What's next for RePlate

We want to scale RePlate to real communities, onboard actual partners, improve reliability, and expand the rewards system to make the loop even stronger. We may consider a transition from deterministic logic to a Claude-powered multi-agent pipeline to parse messy unstructured data from donors and intelligently match food types to specific food bank requirements using natural language understanding.

We could also enable restaurants to post donations via a simple text message by integrating Twilio. Lastly, we hope to partner with local businesses to turn volunteer "impact points" into real-world discounts, creating a circular economy that benefits the entire community.

Built With

Share this project:

Updates