Beginner's Kitchen

Overview
This team of five created the desktop-based Progressive Web App, Beginner's Kitchen, to help busy, young, beginner cooks find recipes that match their skill level and available time.

Tasked with building a PWA surrounding the theme of a recipe finder, our group researched our specific user group, followed the User-Centered Design Process to find their specific problems, brainstormed design solutions, and finally produced a high-fidelity prototype using Vue.js.

Team: Rylee Hickman, Jordin Miller, Miranda Medina, Tony Bridges, and Thomas Wu
Role: Each team member held an equal role in researching, designing, and prototyping throughout the three-month process

Duration: 3 Months

Skills: User Research, User Centered Design Process, Progressive Web App (PWA) Design, Development & Deployment, and User Testing
Tools: Vue.js and Bootstrap/BootstrapVue

User Research

The group first did a round of exploratory, semi-structured interviews with people of various backgrounds to assess pain points within the cooking process. Our team devised a set of questions for these interviews, such as "How did you last decide what to make for yourself?" and "In the past week, how many different recipes have you made?". We also included more open-ended and qualitative questions, like "What do you value most when making a recipe?" and "Are you happy with the healthiness of your meals?". We designed these questions and prompts to follow best practices of user research methods, intentionally pointing to specific experiences and avoiding leading in our questioning. After these interviews, we created affinity diagrams to visualize commonalities between responses. This allowed the group to narrow down to our target audience: beginner-level, young professionals looking to improve their cooking skills. We then conducted a second set of interviews with members of our target audience to specifically discover the most pressing issues of this group.

Rough affinity diagram for exploratory interviews to assess commonalities in responses (different colors correspond to different interview participants)

Final affinity diagram for target user interviews to determine common, universal issues (different colors correspond to different interview participants)

Final User Group

From these interviews and affinity diagrams, we determined that our final user group described young professionals with beginner-level cooking skills, who wish to improve the quality of, and add variety to, their home-cooked meals. From our exploratory interviews, we discovered that many people we talked to only had a basic knowledge of cooking techniques and had only recently started cooking for themselves, and were tired of making the same meals every week. They were looking for inspiration for recipes that match their skill level while also taking into account their busy lifestyles.

Persona

Avatar image from https://getavataaars.com/

Alex is a student and TA at a large university studying engineering, participates in research, and rock climbs in his free time at school.

  • He has only basic culinary skills and considers himself to be a beginner
  • He knows how to cook five recipes from memory
  • Learns skills well from watching videos
  • Typically obtains his recipes from social media platforms like TikTok, or from searching Google
  • Often gets overwhelmed regarding cooking and forgets recipe ideas, leading him to choose a familiar recipe
  • He's not a picky eater, but he tends to get bored of foods after eating them too frequently
  • Always has a busy schedule and appreciates ways to save time
  • He wishes to improve his cooking skills but wants to accomplish this gradually over time due to his busy schedule

Key Problems

Next, our team took the information we had gathered up until this point to identify the most significant problems for our target user group. Although our initial list of issues was more sprawling, we determined two key problems we thought would be most important to address.

  1. Users are interested in, but logistically have trouble with, preparing a variety of meals throughout the week to avoid repetition.
  2. Users find it difficult to find recipes that align with the available time and skillset they have at a given time.

Value Propositions

Compared to the existing solutions for finding recipes (like Googling and using social media), our new product provides:

  • A less overwhelming method of finding new recipes for amateur cooks
  • A centralized system of storing recipes for users
  • Ways for users to filter by the time commitment that a recipe will take
  • An increased variety of meal suggestions based on previous user inputs
  • Ways for users to build their cooking skills over time
  • Ways for users to filter recipes based on their current skill level

Project Themes

Desktop

We will implement our app in desktop format to take full advantage of the larger screen size, affording the user to view more things at once.

Interactivity

Based on feedback from the user, we want the application to adjust content.

Centralized

We want users to accomplish their goals all in the same place.

Sketches

With our user group, problems, and project themes identified, our group began to brainstorm a possible product design. After we decided on a basic application structure, we iterated several times to produce these final sketches for our Progressive Web Application (PWA).

This sketch shows the design for the Explore page, the page that the user lands on upon opening the app. This page displays a grid of recipe thumbnails and buttons to filter based on ingredient, skill level, and time.

This sketch illustrates the Weekly Plan page's place in the navigation sidebar, as well as a sample plan for the user. Types of activities they could complete include skills (which will teach the user a new cooking skill while also prepping for a recipe), prep work (which will help them to prepare for an upcoming meal with skills they have already learned), and cooking (in which the app will help them to complete a recipe with the prepared ingredients/food). The users can navigate to previous and upcoming weeks, and click on daily sections to gather more information.

In this final sketch of the Daily Details page, we provided a clarified example of details for Thursday of Week 1. The morning section describes an example prep work activity for the user, as well as button controls to 'View Resources' (such as videos or written instructions to refresh their skills) and 'Mark as Complete' (to add to their skills). The night section describes the user's plan for the night, where the app instructs them to cook a dinner recipe, as well as a lunch meal for the next day. These recipes come from/are inspired by recipes that the user has previously bookmarked, and they can visit the specifics of both recipes through their respective buttons below the description.

Wireframe

The image below shows the wireframe of our PWA, indicating its proposed flow between pages. The Explore page will be the page that users first land on upon launch. They could then click the Filter controls at the top of the page to open filter dropdowns for Ingredient, Skill Level, and Time, respectively. They may also click on a recipe card, which will direct them to a recipe details page. From the Explore page or anywhere else on the app, users may also navigate to the Weekly Plan page through the navigation sidebar. From the Weekly Plan page, users may click on daily sections in order to open a daily details page. On this page, there may or may not be controls which will direct the user to recipe details page(s), depending on the week. From the navigation bar anywhere in the app, users can also move to the Profile page. The users may move from this page to a skills details page, by clicking the 'See More' control. Additionally, the profile page may direct users to a recipe details page through the 'Bookmarked Recipes' section.

Design Rationale

Our final design took into account the critical problems of users that we identified in the previous milestone (users want a variety of meals throughout the week, and users don't want to spend too much time on a meal and to cook efficiently with their given skill level). To address the issue of variety, the 'Recommended For You' section on the explore page allows users to see recipes they wouldn't usually find (and don't have to search extensively). Furthermore, our design helps solve the problem of users wanting to spend less time on meals and cook with their given skill set by allowing users to filter all recipes by the time and the skill level they require. The weekly plan also helps the user to create time in their week for cooking and assists users with their goal of improving their cooking skills (which will allow them to increase the variety of meals they can make).

Additionally, the bookmarked recipes feature allows us to create a more centralized platform for finding recipes, which is one of our focuses in our value propositions. Allowing users to bookmark recipes to their profile establishes a place where they can come back any time and quickly locate a recipe they are interested in.

Overall, the design communicates effectively with our users because it has a natural flow. The navigation bar, visible on every page, includes the three main pages of the PWA. The app starts on the explore page, which is likely the primary feature users will use. From there, you can filter and access recipe details. The weekly plan is a separate page because it maps out what skills you are learning for the week and what days you need to prep/cook. The bookmarks page, previously labeled as the profile page, contains all recipes that users have saved.

Prototype Development Process

To code this prototype, our team used Vue.js along with BootstrapVue within Visual Studio Code. These tools and other resources like JSON allowed us to develop a high-fidelity prototype of the PWA we wished to create.

Our team worked with Git/GitHub's repository branches to independently work on different sections of the PWA while avoiding troublesome conflicts within the group. Finally, we merged all branches to achieve our desired, functional product and published/deployed our final product using Heroku.

Design Rationale

Our final design took into account the critical problems of users that we identified in the previous milestone (users want a variety of meals throughout the week, and users don't want to spend too much time on a meal and to cook efficiently with their given skill level). To address the issue of variety, the 'Recommended For You' section on the explore page allows users to see recipes they wouldn't usually find (and don't have to search extensively). Furthermore, our design helps solve the problem of users wanting to spend less time on meals and cook with their given skill set by allowing users to filter all recipes by the time and the skill level they require. The weekly plan also helps the user to create time in their week for cooking and assists users with their goal of improving their cooking skills (which will allow them to increase the variety of meals they can make).

Additionally, the bookmarked recipes feature allows us to create a more centralized platform for finding recipes, which is one of our focuses in our value propositions. Allowing users to bookmark recipes to their profile establishes a place where they can come back any time and quickly locate a recipe they are interested in.

Overall, the design communicates effectively with our users because it has a natural flow. The navigation bar, visible on every page, includes the two main pages of the PWA. The app starts on the explore page, which is likely the primary feature users will use. From there, you can filter and access recipe details. The weekly plan is a separate page because it maps out what skills you are learning for the week and what days you need to prep/cook. The profile page contains all the information about a specific user (skills they've learned, or need to learn, and recipes they want to make).

User Testing

After the first iteration of our prototype development, the team conducted a round of testing using a predetermined set of user scenarios. 

  1. Alex is a student at a university and has two tests and a paper due this upcoming week. He wants to cook a new recipe this week to relieve some stress. Alex has never tried zucchini and wants to try it out this week. He uses Beginner's Kitchen to find a new recipe that incorporates this new ingredient in a new dish.
  2. While scrolling through Beginner's Kitchen, Sam found a recipe for Lemon shrimp risotto that sounded amazing. She knew she would enjoy this recipe and would like to make it this week. She uses the Beginner's Kitchen to bookmark the recipe for quick future access.
  3. Rachel has a meeting with her project team in two hours. She just realized that she forgot to eat lunch and wants to ensure that she eats before the meeting. Beginner's Kitchen allows her to search for a recipe that will take no more than 45 minutes (so that she has time to prepare the food and get to her meeting on time).
  4. It's November of Sammy's senior year, and she just started cooking for herself in September after three years of having a meal plan. She's planning on hosting a Friendsgiving and wants to know the cooking skills she has learned over the past few months. Beginner's Kitchen lets users see the progress and skills they have learned to understand what they can make.
  5. Ben is a student planning his weekly schedule, trying to balance classes, sports practice, and cooking for himself. He knows he needs to prepare ahead of time. It's Wednesday night, and Ben wants to know what he needs to do tomorrow to prep his meals. He uses Beginner's Kitchen to visualize his weekly schedule and check what he needs to prep tomorrow (Thursday) to be on track for the week. 
  6. After using Beginner's Kitchen for two months and completing 60% of her basic cooking skills training, Anna wants to cook a more challenging recipe than usual. Beginner's Kitchen lets Anna select a recipe that requires a "Medium" skillset so she can challenge herself.

We then took the common issues determined from these sessions and fixed what we could, given the timeline and scope of the project.

Final PWA

View a video of our final product below:

Or click here to view the PWA yourself!