Inspiration
Growing tired of the same food at our college's dining hall, we decided to create "food hacks" by combining dishes from multiple vendors to enhance our experience, and share these on a Discord server. However, keeping track of a list of recipes inside chat is cumbersome, and our college additionally has a website to programatically pull menus from their food provider. Wanting to share our recipes to as many students as possible, we decided to create Hack On Campus: an all-in-one dining hall platform that allows you to share your own custom food creations.
What it does
Our web app, Hack On Campus, pulls menus for colleges from Dine On Campus by Chartwells, a food provider for many colleges in the nation. We process the menus to allow people to create and share their own custom food combinations made with the dishes in their dining hall. Each recipe includes a list of dishes and vendors to visit, as well as a star-rating system so other students can rate how tasty the recipe is.
How we built it
We utilized a Cloudflare stack for complete serverless and edge deployment. Our web app uses Cloudflare Pages for web hosting, Workers for serverless edge computing, KV for extremely fast and low-latency I/O, and D1 SQL for storing user data. Using this stack allows Hack On Campus to be deployed globally and run on the edge to users, resulting in very quick response times.
Challenges we ran into
We originally planned to start the project using the new Deno 2.0 runtime. However, we quickly realized that we wouldn't be able to use the Cloudflare stack with it, so halfway through the project, we switched to using Node.js. We also had issues with Dine On Campus' API being very fragmented, having multiple different IDs for objects that we had to keep track of, coupled with the API being completely undocumented.
Accomplishments that we're proud of
We're very proud of being able to run Hack On Campus using serverless technology and server-side rendering, allowing for a very snappy experience using our web app. We're also very happy that we can finally have a much easier way of sharing custom recipes, and that we can bring food hacking to more colleges, allowing any student to share the cool recipes they've made.
What we learned
We learned the pressures of creating a full-stack app from frontend to backend. Especially for developing our frontend, we learned how crucial having our data in a consistent and organized manner is on our backend. Having issues with the backend makes it hard to implement the frontend when we have to backtrace to find issues with our internal APIs.
What's next for Hack On Campus
We're planning to turn Hack On Campus into a production service that can be used at colleges that use Chartwells as their food provider. College students will be able to sign-in and share their own custom dishes with other students. We also want to expand Hack On Campus to pull menus from colleges that don't use Chartwells. Ideally, Hack On Campus becomes a positive feedback loop where anyone can share great food, and provide feedback to food providers on how to make the college dining hall experience better.
Built With
- ai
- cloudflare
- edge
- nextjs
- react
- serverless
Log in or sign up for Devpost to join the conversation.