Skip to content

Requirements

Coy Burke edited this page Oct 17, 2021 · 5 revisions

REQUIREMENTS

The user can:

  1. Create an account

  2. Login

  3. Manage a list of “on-hand” ingredients*:

    -(3.1) Add ingredients

    -(3.2) Remove Ingredients

    *note: ingredient names will be stored as a String and the quantity will be stored as a floating point value for amount and a String for the units.

  4. View a selection of suggested recipes* (thumbnails/brief description)

    *note 1: recipe suggestions will be based on the user's on hand ingredients. Recipes that contain items that the user does not have will not be suggested, unless the user sets an acceptable "tolerance" for missing ingredients (Requirement 6)

    *note 2: suggested recipes will be gathered using the Tasty API, and a list of at most 20 suggestions will be stored at a given time, and refreshed whenever:

    • the user makes changes to their filters
    • the user makes changes to their on-hand ingredients
    • the user has saved or dismissed all of the currently available suggested recipes
  5. Filter suggested recipes by:

    -(5.1) Preparation time

    -(5.2) Cook time

    -(5.3) Calories

    -(5.4) Specific ingredients

  6. Set a "tolerance" for suggesting recipes that contain ingredients that the user does not have. This will allow the user to decide if they are willing to purchase the required ingredients or replace the missing ingredient with another ingredient that they do have on hand. Ex: Only suggest recipes for which the user is missing 2 items.

  7. Click a recipe suggestion to view the full recipe, including ingredients and instructions*.

  8. Swipe (or tap "Skip") to skip a suggested recipe

  9. Swipe (or tap "Add to saved") to add a recipe to their “Saved Recipes” list

  10. View their current “Saved Recipes” list

  11. Remove items from their “Saved Recipes” list

  12. Organize “Saved Recipes” list by folder

  13. Search for recipes via a keyword search

  14. Filter search results (same filter options as requirement 5)

  15. Leave a review for each recipe

  16. Create and save a custom recipe:

    -(16.1) Starting from a blank recipe

    -(16.2) Copying an existing recipe