Inspiration

As college students, we wanted to help our peers quickly and cheaply plan out their meals for the week. Some are extremely busy, and would prefer to spend time elsewhere doing different tasks. Thus, NutriBudget provides them a quick and easy way to affordably grocery shop, based on their preferred budget..

What it does

Users can input their dietary preferences (vegetarian, vegan, or gluten-free), list items they already have in their fridge, and set a price preference (budget). The site then uses an AI-driven algorithm to generate a weekly meal plan along with an optimized shopping list that minimizes costs while ensuring nutritional variety. Additionally, it provides an estimated total cost for the shopping list to help users stay within their budget.

How we built it

For the front end, we used React and a custom CSS for a clean, user-friendly interface. After the user provides their desired inputs, the interface displays the meal plan and shopping list. For the back end, we used FastAPI for building the endpoints. We used a greedy optimization algorithm centered around prioritizing re-use and reducing expenses. The frontend communicates with the backend by API calls from Axios. After, the backend will return a meal plan, shopping list, and final cost as JSON responses.

Challenges we ran into

Implementing fetch.ai was a challenge we ran into, so we resorted into not using it unfortunately. Also, due to time constraints, we were unable to get access to large corporate data sets, like Walmart for example. This hindered our ability to provide discounts relevant to the user's local store.

Accomplishments that we're proud of

Given that we have little experience with frontend development, we were happy to get an easy, user-friendly interface properly working.

What we learned

We learned to delegate our time better and more effectively. We also got insights into frontend development and how it is integrated with backend using Axios.

What's next for NutriBudget

We plan to incorporate the feature of using zip codes to tailor to the users' local stores. For this, we would need access to the given store's exact prices, discounts, etc. We plan to implement this using machine learning.

Built With

Share this project:

Updates