COLAB30 - Web App

Chefmate

Easy access to recipes with one snap

Problem Background

Young adults frequently encounter the challenge of deciding what to cook with the ingredients they have on hand. This uncertainty often results in food waste, frustration, and an increased reliance on takeout or pre-packaged meals. A study published in the Journal of Nutrition Education and Behavior reveals that approximately 31% of food in American households is wasted, largely due to the uncertainty about how to use available ingredients. This issue is especially prevalent among young adults, who may lack extensive cooking experience or creativity in the kitchen.

ChefMate aims to address this problem by reducing food waste, saving money, and promoting healthier eating habits. It offers personalized recipe suggestions, functioning as a virtual cooking assistant to guide users in creating delicious meals with minimal stress and effort.

User Pain Points & Research Insights

  • Lack of Cooking Experience: Many young adults are not confident in their cooking skills, leading to a limited repertoire of meals they can prepare and a dependency on takeout or pre-packaged foods.
  • Uncertainty in Ingredient Usage: Users often find themselves unsure about how to combine available ingredients to create a meal, leading to frustration and eventual food waste.
  • Time Constraints: Young adults often have busy schedules and limited time to plan meals, shop for ingredients, and cook, which contributes to their reliance on convenient but less healthy food options.

Solution Explanation

Based on our target users’ pain points, we have developed the following features for ChefMate:

  • Ingredient Identification via Camera: Users can open the camera and take a photo of the ingredients in their kitchen. This feature allows for quick and easy inventory management without the need for manual input.
  • Advanced Back-End System: The back-end system is designed to identify the ingredients from the photographs taken by the user. It processes the images to recognize various food items and suggests recipes based on the available ingredients.

These features collectively aim to empower users to cook with confidence, reduce food waste, and adopt healthier eating habits by making meal preparation more accessible and less stressful.

Iterative Design Learnings

After we showcased our prototype, we learned that users found the process of adding ingredients a bit ambiguous due to a lack of clear action buttons. We aimed to make this process clearer in the design by including an “add ingredient” button to clarify the next steps and enhance user predictability.

Technical Implementation Details

Netlify and Render: Chefmate.netlify.app

What is your tech stack?
  • Backend framework- Python, frontend framework- React, vanilla css, 
High level journey of a request
  • Talk about why you chose the tools used and how you can improve the application's design.
    • We chose Python for its powerful AI tools, React for its efficient and reusable components, and vanilla CSS for lightweight and precise styling. To improve the design, we'll focus on user research and accessibility, optimize performance, and ensure scalability with microservices and load testing.
  • If you can, provide a walkthrough of the application functionality including Creating/Retrieving/Updating /Deleting data in the application.
    • The application is a recipe suggestion tool that allows users to input ingredients and receive recipe recommendations based on those ingredients. Users can manually add ingredients or upload an image to detect ingredients using an AI service. The ingredients list is used to fetch recipes from the Edamam API. The application has two main components: a sidebar for adding ingredients and a main content area for displaying recipe results and a modal for adding ingredients. Creating Data (Adding Ingredients), Retrieving Data (Fetching Recipes), Updating Data (Modifying Ingredients List) & Deleting Data (Removing Ingredients)

Technical challenges

What was the hardest part of development?
  • Learning how to implement AI
Does your app have any scaling issues?
  • Not at this moment
What are some key takeaways?
  • Understanding AI fundamentals and continuous learning

Future Steps

Our plan is to continue developing Chefmate for home cooks seeking convenient solutions to make the most out of their groceries.

  • Make Chefmate more personal to its users by enabling account creation, which allows for recommendations based on cooking history and bookmarking of recipes for future reference. We’d also like to include filters for dietary restrictions/preferences on the recipe results page so that users can browse more efficiently.

Learnings

Product Manager Learnings:

Oliver Soble

As a PM I gained experience in agile workflow and management. I was challenged to be on top of our weekly meetings and communication across different departments. I really enjoyed working in a team setting, giving us real-world experience. I want to give a ton of credit to our designer and devs, as they really took the problem space and ran with it to create awesome solutions!

Designer Learnings:

Winnie Phan

Gained experience working within a cross-functional team and under the lead of a PM. Learned more about agile methodologies, communicating with engineers as well as iterating upon designs to ensure feasibility.

Developer Learnings:

Mariamawit Moges

Gained experience in teamwork and learned how to thoroughly research unfamiliar topics. Developed skills to understand and implement powerful technologies like AI. Completed the entire development cycle of an application, from brainstorming and design to building and testing.

Developers Learnings:

Haya Mubaidin

&

Learned how to work with a team, especially in collaboration with frontend developers, how to connect frontend and backend code, improved problem-solving skills, gained experience in debugging complex issues, and developed a deeper understanding of project management and agile development practices.

Full Team Learning

Agile workflow, communication, problem solving,