-
-
-
user login page
-
user sign up page
-
user gender info
-
user dietary restrictions
-
user allergies info
-
user activeness level
-
user dining hall preferences
-
user daily calorie/macros counter
-
user add a meal (breakfast, lunch, dinner, and snacks)
-
user workouts
-
user (roman pisani) profile
-
user (roman pisani) calendar and workout
-
add a workout
-
user (roman pisani) food recommendations for berkshire
-
user weight info
-
user height info
-
user birthday
We were inspired to build UMunch after realizing that every member of our team shared the same struggle. As freshmen at UMass Amherst, we all found it difficult to maintain consistent eating habits and find time to eat between classes. We tried multiple health apps, from MyFitnessPal to Chronometer, but none truly met our needs, they weren’t personalized to what UMass dining halls were actually serving, and they were too difficult to manually log all the individual foods. That’s when we realized a change was needed. We wanted to create an app built by UMass students, for UMass students, one that understands our dining system and schedules. With constantly changing menus and packed class days, it’s easy for students to miss meals or settle for quick, unhealthy options. We saw this hackathon as an opportunity to make something meaningful for future students: an application that helps them make smarter dining choices, manage their eating schedules, and ensure they’re getting the nutrients they need to stay healthy and perform their best. The great thing about UMunch is that it can easily be adapted for any University, so students around the world can be inspired and benefit from this application.
UMunch is an AI-powered dining recommendation app designed specifically for UMass Amherst students. The app takes in a student’s dining preferences, dietary restrictions, and allergies, alongside their potential workout habit to recommend meals based on dining halls near them. By integrating the UMass Dining API and Google Gemini, UMunch analyzes menu data and generates personalized suggestions for breakfast, lunch, and dinner.
Throughout the process of building UMunch, we learned a great deal about both technology and teamwork. We explored how to integrate artificial intelligence into real-world applications by using Google’s Gemini API to generate personalized meal recommendations. We strengthened our database management skills through Snowflake, learning how to securely query and structure user and menu data alongside scraping data and storing it in Snowflake. On the frontend, we gained experience developing a cross-platform mobile interface with React Native and Expo, implementing components like date pickers, modals, and cards for a seamless experience. We also learned how to implement vocal AI’s, like Eleven Labs into our project, having to manage real-time data transmission and processing. Finally, we learned how to collaborate effectively in Git, managing branches, resolving merge conflicts, and coordinating backend and frontend work in parallel.
We built UMunch as a full-stack system with a Python Fast-API backend and a React Native and Expo frontend. The backend connects to a Snowflake database that stores user profiles, dietary preferences, and dining hall menu data. The Fast-API server retrieves this data, formats it into structured prompts, and sends it to Gemini, which then generates meal suggestions based on factors like time of day and user needs. These recommendations are sent back to the mobile app and displayed in a clean, easy-to-use dashboard. Our goal was to make UMunch both smart and intuitive, something any student could use daily without effort. The app dynamically tracks each student’s nutritional data, calculating daily calorie intake and remaining targets while monitoring macronutrient distribution across fats, proteins, and carbohydrates.
Like any hackathon project, we faced our share of challenges. Integrating Gemini with Snowflake data required careful prompt engineering to ensure the model understood the structured input. We ran into multiple environment issues, such as Expo port conflicts and Flask server errors, which slowed development. At one point, we even stashed and popped code into the wrong Git branch and had to recover our progress carefully. Time was also a major constraint and building an AI-powered full-stack app in under 36 hours required constant communication and rapid problem-solving. Despite these hurdles, we learned to adapt, divide tasks efficiently, and stay focused under pressure.
Built With
- expo.io
- fastapi
- gemini
- llm
- python
- react-native
- restapi
- snowflake
- sql
- tailwind



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