Inspiration
TooGoodToGo gave businesses an opportunity to not let their food go to waste by letting them advertise their expired food with heavy discounts. We took that and made it free for people in need by involving non-profits and those businesses.
What it does
Save on Waste is a live marketplace that nudges surplus meals toward the people who need them most. When a verified charity signs in, they see an interactive React Leaflet map that hydrates itself with Supabase business records. Donors can jump to the material-themed dashboard to track every grab with timestamps, building a compliance trail that proves impact while keeping food out of landfills. Role-aware routing keeps the donor tooling hidden from charity volunteers.
How we built it
We leaned on Next.js App Router with React 19, Tailwind utilities, and Material UI so we could ship polished modals (GrabButton, UploadButton) without burning hackathon hours on styling from scratch. Supabase powers authentication, row-level access, and the business inventory store; a lightweight AccountProvider wrapper fetches supabase.auth metadata and decides whether the charity-only map should render. React Leaflet handles the map canvas, with lazy loading to keep the initial bundle tight and custom Leaflet icons for a friendly visual touch. The grab flow pre-fills the current gram counts, validates that every field stays within bounds, and only closes the modal when the check passes—giving volunteers immediate feedback while preserving donor trust.
Challenges we ran into
We ran into a bunch when implementing Leaflet as the interactive map for our website. We also ran into authentication issues when using Supabase.
Accomplishments that we're proud of
We are proud of the product that we have made, even though it is a very rough version. We are glad that we pushed through it to finally decide on the version that we thought was a success
What we learned
We mainly learned that big hackathon events like this are great, and we would love to participate in them
What's next for Save on Food
Hopefully, this project will reach its full potential and ultimately help people in need, even a little bit more, if we can.
Built With
- javascript
- leaflet-1.9
- material-ui-v7
- next.js
- openstreetmap-api
- postgresql
- radix-ui
- react-19
- react-leaflet-5
- shadcn/ui
- supabase
- typescript
- vercel

Log in or sign up for Devpost to join the conversation.