Inspiration
Every night we walked past restaurants on Main Street in Newark throwing out trays of perfectly good food, and we knew the Food Bank of Delaware was just a few miles away. The gap between them wasn't distance — it was coordination. Existing food rescue platforms were too slow, too complicated, or required restaurant staff to be trained on new software. We wanted to build something that worked in the real world, at closing time, when a manager has 30 seconds and just wants to go home.
What it does
One More Plate is a real-time food rescue platform that connects Newark restaurants, volunteer drivers, and local shelters in under an hour. A restaurant posts surplus food in 30 seconds. Gemini AI structures the post and fires a real SMS to nearby volunteers. The volunteer claims the run, gets live GPS directions to the restaurant, confirms pickup with a photo, and directions automatically switch to the shelter. Every step is tracked in real time — the shelter sees an ETA, the volunteer sees a countdown, and the food gets there.
How we built it
We built One More Plate as a full-stack Progressive Web App installable on any phone without an app store. The frontend is React with TypeScript and Vite. We used Gemini 1.5 Flash for AI-powered post structuring. Google Maps JavaScript API handles live route rendering and GPS directions. Supabase powers the real-time database — when a restaurant posts food, every volunteer's feed updates instantly. The whole thing is deployed on Vercel with serverless functions handling the SMS backend.
Challenges we ran into
Getting real-time updates to work reliably across devices was harder than expected — Supabase's Postgres CDC pipeline needed careful configuration to push changes instantly without polling. Integrating live GPS with Google Maps so that directions automatically switched from restaurant to shelter after pickup confirmation required careful state management. And building something that felt genuinely simple for a restaurant manager to use — while being technically sophisticated under the hood — required many iterations.
Accomplishments that we're proud of
We shipped a fully functional app in one hackathon cycle. Real SMS notifications hit a real phone. Real GPS directions open from a live location. Real posts save to a database visible to every user instantly. The Gemini integration doesn't just structure data — it writes a contextual dispatch message and calculates CO₂ impact per post. The app is installable as a PWA on iPhone and Android with no app store submission. And it's actually designed for the real restaurants and shelters in Newark, Delaware — not a generic demo.
What we learned
We learned that the hardest part of building for social impact isn't the technology — it's designing for users who have zero patience for friction. A restaurant manager at 10:45pm will not fill out a five-field form. We cut the flow to four fields and let Gemini do the rest. We also learned how powerful Supabase's real-time subscriptions are for multi-user apps, and how much the PWA model reduces the barrier to adoption compared to native apps. And we learned that Twilio has a lot of restrictions on trial accounts.
What's next for One More Plate
First, we want to onboard real restaurants on Main Street in Newark and run live pilots with the UD student volunteer community. Next, we want to add push notifications so volunteers get alerted even when the app is closed. We want to build a shelter-facing dashboard so coordinators can see incoming deliveries in real time and manage capacity. Longer term, we see One More Plate expanding to every college town in America — the combination of student volunteers, dense restaurant corridors, and local shelters is a pattern that repeats everywhere. The infrastructure is built. The model works. Now it's about scale.
Built With
- gemini
- pwa
- react
- supabase
- tailwind
- typescript
- vercel
- vite
Log in or sign up for Devpost to join the conversation.