Inspiration

FoodSurpl.us was inspired by a simple contradiction we saw on college campuses: students experience food insecurity while perfectly good food from meetings, events, and dining operations is often discarded.

We wanted to create a fast, practical way to connect that surplus with nearby students before it goes to waste.

What it does

FoodSurpl.us connects campus members with available food through a straightforward process:

  1. Post available food with a pickup location, deadline, quantity, and optional photo.
  2. Browse or search for nearby food.
  3. Reserve a portion and receive a private pickup code.
  4. Confirm the handoff so the platform reports completed pickups—not just promises or clicks.

The Impact page translates confirmed pickups into understandable estimates, including:

  • Pounds of food redistributed
  • Standardized meal equivalents

These figures are clearly labeled as estimates and use a documented, conservative methodology.

How we built it

We built FoodSurpl.us with:

  • Next.js and TypeScript
  • Supabase — Authentication, PostgreSQL, Row Level Security, and private photo storage
  • Gemini — Optional photo-assisted listing drafts and natural-language search
  • Leaflet — Pickup maps using verified campus coordinates
  • Zod — Runtime validation
  • Vercel — Deployment

Reservations, cancellations, and pickup confirmations use atomic database operations to prevent duplicate claims and oversold listings. Authentication and ownership are verified independently by every protected endpoint.

AI assists users without controlling the process. It can help draft titles and descriptions or interpret a search, but organizers must confirm operational details and dietary information before publishing.

Challenges

Keeping inventory accurate

One major challenge was maintaining accurate inventory when multiple students attempted to reserve the final portion simultaneously. We solved this with database-level locking and atomic reservation functions.

Keeping AI-generated information trustworthy

We also had to prevent AI-generated information from being mistaken for verified food-safety or pickup information. The system discards inferred allergens, dietary claims, quantities, locations, instructions, and deadlines unless an organizer explicitly provides them.

Building a dependable experience

Other challenges included:

  • Protecting private pickup codes and photos
  • Handling expired reservations
  • Supporting mobile layouts
  • Keeping the application useful when map tiles or AI services are unavailable
  • Presenting environmental impact without overstating what the data proves

What we learned

We learned that responsible product design is as important as technical capability. A food-rescue platform must be trustworthy, quick to use, and honest about uncertainty.

Verified handoffs matter more than inflated engagement totals, and AI is most useful when it reduces friction while leaving important decisions with people.

We also learned how thoughtful database constraints, authorization, graceful fallbacks, and clear language can turn a prototype into a dependable community tool.

What’s next

We hope to:

  • Pilot FoodSurpl.us with campus organizations
  • Measure representative portion weights
  • Replace our initial impact assumption with campus-specific data

Future possibilities include:

  • Standby waitlists
  • Recurring listing templates
  • Responsible notifications
  • Analytics that help organizations prevent surplus before it occurs

Built With

Share this project:

Updates

Submission history