Inspiration
Long hours, packed schedules, and poor eating - the hallmark of almost every young adult these days. A 2018 study by Universiti Brunei Darussalam found that approximately 80% of students have unhealthy eating habits. Poor eating habits typically start during university and can continue for decades, leading to a lifelong unhealthy lifestyle. Due to busy schedules, stress, and limited cooking knowledge, many college students and young adults struggle with healthy eating habits. That’s why we made PurePlate! PurePlate creates meal plans, so people know what, where and when to eat! PurePlate works by factoring in all of the events scheduled in Google Calendar, alongside dietary restrictions, weekly meal budget, and proficiency in the kitchen to plan out unique, healthy, and delicious meals! Our goal is to encourage young adults to adopt better eating habits by offering personalized meal plans based on their schedules and nutritional needs. A healthy diet is the first step on the road to success!
What It Does
This project creates a meal plan for a student following standards for nutritional servings considering their Google Calendar schedule (every event in their calendar for the entire week), dietary restrictions, budget, zip code (recommends what to eat at restaurants near them), and how often they want to cook at home.
How We Built It
We built this project using Auth0 for authentication, Google Gemini for the AI meal generation, and IDX as the main platform. For the front end, we utilized React, TailwindCSS, Axios, and Vite. For the backend, we used Node.js, n8n, and Firebase. We integrated IDX with Firebase to combine the frontend and backend components.
Challenges We Ran Into
Challenges we ran into were handling integration between multiple APIs (Google Gemini, Google Calendar, Auth0) and ensuring seamless meal plan generation. It was a slow start, as we all had to get used to using new platforms and figuring out how to go about completing so many different tasks to pull the project together. There were lots of bugs in the code and issues prompting the AI for backend, and lots of struggles translating between backend and fronted, but eventually, we were able to puzzle everything out and create a website we are really proud of!
Accomplishments that we’re proud of
We are really proud of our teamwork and ability to each contribute a different set of skills to finish a pretty ambitious project, especially since none of us had known each other before! Anjali worked a lot with the backend logic and she is proud for learning how to work with a completely new framework (n8n) to put together an AI model that can take in data from a user's calendar. Because this was her first hackathon, Makayla is proud of learning how to integrate Project IDX with CSS and JavaScript for the frontend of the website. Hanxi worked extensively on the frontend, successfully integrating Auth0 for authentication, and building a seamless user experience using Vite, React, and Tailwind CSS. Tatiana is proud that she learned more about how the backend works through the Firebase software and how to use Project IDX.
What we learned
We became more knowledgeable about how to connect the frontend with the backend. We also had to learn how to implement multiple APIs and lots of different libraries and tools. This project used n8n, Webhook, Auth0, and Axios, and we had to learn how to separately build different parts of the project at the same time and piece them together. Some members were newer at coding and learned how to integrate different IDEs with frontend and backend development.
What’s next for PurePlate
We have a lot of plans for the future! We all think that PurePlate is a very promising project and hope to improve upon it. We want to work to make the AI more accurate, be able to integrate dining plans for colleges, include calorie counts, and create specific grocery lists.
Built With
- auth0
- axios
- firebase
- gemini
- google-calendar
- idx
- javascript
- n8n
- react
- vite
- webhook

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