Inspiration

As students who've attended quite a few campus events, we kept noticing the same thing: tables piled high with leftover food at the end of the night, while other students on campus had no idea the event was even happening. Whether it was a club info session with two dozen extra samosas or a faculty mixer with untouched sandwiches, the waste was real, and so was the missed opportunity. We wanted to build something that bridges that gap, turning surplus into a win for students who just want a free meal and a reason to get involved on campus.

What It Does

CampusEats helps students discover nearby campus events that are offering free food, all visualized on an interactive map. Users can open the app, see pins dropped across campus for active or upcoming events, and tap into details like what food is being served, where the event is, and when it starts. Instead of relying on word-of-mouth or buried Facebook posts, CampusEats surfaces this information in real time so students can actually show up.

How We Built It

We scraped Instagram to gather event posts from campus clubs and organizations, extracting location, time, and food-related details from captions and hashtags. The backend is deployed on Vercel with Firebase handling our database and real-time data syncing. For the front end, we integrated MapBox to render an interactive campus map with event pins. We used Notion throughout the hackathon to manage tasks, track progress, and keep everyone aligned across the team.

Challenges We Ran Into

Instagram scraping turned out to be our biggest technical hurdle. Instagram's rate limits meant we had to carefully throttle our requests and handle failures gracefully to avoid getting blocked. Beyond just fetching data, parsing the unstructured text in captions, pulling out useful details like food type, event time, and location, required a lot of iteration. Natural language in Instagram posts is messy, and building a reliable parser that could make sense of everything from "🍕 FREE PIZZA 6PM SUB 205" to full paragraph descriptions took significant effort.

Accomplishments That We're Proud Of

We're proud that we got the full pipeline working end-to-end: from scraping a live Instagram post to displaying a pin on the map with real event details. It was genuinely satisfying to see a campus event appear on the map in near real time. We're also proud of how clean and intuitive the map interface feels, as it makes discovering free food on campus actually fun.

What We Learned

We learned a lot about the practical challenges of working with unstructured social media data and how different it is from clean, structured APIs. We also deepened our understanding of Firebase's real-time capabilities and how to pair it efficiently with a Vercel-hosted backend. Most importantly, we learned how to scope and ship fast under time pressure, and Notion kept us from going off the rails.

What's Next for CampusEats

Our information sourcing infrastructure is built to scale easily to other campuses and potentially beyond the campus by simply adding more accounts to our tracked accounts and adding more compute to our information sourcing, and we think we can eventually add ways for users to add events manually. We also see opportunities to help our users recover event costs from their leftover food through selling leftover surprise boxes on the platform once enough users use the platform. We also want to be able collect data and statistics on the food we help students save.

Built With

Share this project:

Updates