-
Notifications
You must be signed in to change notification settings - Fork 2
Project History
The project started as a hackathon project by Shengyuan and some of his friends. If you look it up on Devpost you can probably find it. During the 2021-22 school year, Shengyuan worked with Eric to create the initial public release and then they onboarded Brian and Kaiyuan to help with the backend and Tony and Justin to work on an Android version.
The backend has to be updated a lot because of how often UCI changes how the UCI dining hall info website works. Initially, it was server-side rendered, so we used a web scraping library to parse the raw HTML of the page, but then mid-school-year they switched to client-side rendering, but luckily they didn't add strict CORS policies on their API, so we were able to reverse engineer it and make our requests straight to the CampusDish API, which made things a lot simpler. However, when we tried to add information about custom events like Hawaiian Day or Boba Day, we realized that they were still using server-side rendering for some parts, so we needed to add the scraper back into our project. During the summer of 2022, they switched the dining hall schedule to be server-side rendered as well, which we haven't fixed yet.
We chose Python for the backend because it's the language taught in the first 3 ICS classes at UCI, so every CS student knows at least the basics. We use Vercel as our deployment cloud provider, which only Eric has access to right now because we don't have funding for the premium version to get a team account.