Inspiration
Our project is inspired by the daily struggles that college students encounter with meal planning, and also with the growing demand for effective food waste management. Sometimes, students have food, but they don't have a proper schedule to eat that food. As such, food goes bad within one or two days, which contributes to food and money wastage.
What it does
MealMate is an AI-driven fridge ingredient-tracking platform that intelligently suggests various recipes that could be prepared with available items. It assists in dietary and food wastage management. It generates recipes that can be made from the available ingredients. It takes pictures of the food inside the refrigeration and updates the food inventory itself. That inventory of food is later used to analyze recipes and even generate an optional schedule to eat that food.
How we built it
We used Raspberry Pi along with a webcam that can be placed inside the refrigeration to take pictures of available food items. Building upon that we used Firebase to store the data received. Gemini is working to integrate the images into meaningful fun information. Building upon that we used Next.js & React to develop the front end and Auth0 for userlogin. We used Gemini API to suggest things while we used Spoonacular API to generate the food recipes. For domain, we used the mlh Godaddy link. For hosting, we use Cloudflare and a home Linux server. the domain points to the IP of that link server. This saves us the cost of hosting.
Challenges we ran into
We ran into issues with broken Raspberry, trying it multiple times, we finally decided to change it, but again it had SSH issues, which was later found out from a missing file. We were not able to find a small camera module that could be placed inside the refrigerator, so we went for a Logitech webcam. We ran into issues of using Auth0, as we didn't know anything about it and spent 5 hours learning. Another issue we faced was the API key exceeding its free limit, so we made multiple accounts for it. Yet another issue, we to integrate all the features, we ran into issues with the npm build. We have created the main features, while the side quests are left with a placeholder. Spoonacular API doesn't generate high-quality images so, we tried solving it but it can only be solved with the paid version of the API.
Accomplishments that we're proud o
We were able to integrate hardware, software, and deployment phases all in one project, making it from scratch to hosting it on a server. Another thing we are proud of is that, we can solve some student's problems while reducing food waste.
What we learned
we didn't know much about next.js, everything that we did was based on little understanding of it. We learn along the way. We also learn about issues related to Raspberry and how to solve them. Finally, We had some deployment issues where the server was not certified, so we learned about Cloudflare certification.
What's next for MealMate
We thought of some new features that could be added into MealMate, which will make meal planning even more personalized and sustainable. The ability to save your most-used recipes in one place with Favorites, or to apply individualized nutritional needs with Dietary Restrictions for each member of the household, will be coming soon. We are also going to add an option for Nearby Groceries that will suggest local stores with ingredients one may want, hence supporting the ability to plan healthy meals while wasting less. With these enhancements, MealMate will give more personalized suggestions and health-aware ones for eating sustainably.
Cite: We used chatGPT, V0.dev, github copilot to help remove the bugs
mentor: connor johnson, paul from MLH
Built With
- apache
- auth0
- cloudflare
- gemini-api
- node.js
- python
- raspberrypi
- react.js
- spoonacular
Log in or sign up for Devpost to join the conversation.