A project by Zack Nemeroff & Cody Smith
We think a reasonable MVP would include a site that allows you to...
- Favourite a recipe,
- Add a recipe (most practically from our favourite recipes) to a 'recipes to cook' section.
- Search through our favourited recipes, search recipesToCook, and search by ingredient.
Goals and Expectations for the Project (What does each group member hope to get out of this project? What do we want to achieve as a team? How will we know that we're successful?):
Make good use of SRP, DRY code. Learn best use of methods. Create modular code.
Team strengths & collaboration styles (consider discussing your Pairin qualities here):
- Make good use of our mentors/rocks.
- Work together as much as possible.
- Plan to work every day after class.
How we can use our strengths to overcome obstacles:
- Use our resources when we get stuck.
Schedule Expectations (When are we available to work together and individually? What constraints do we have?):
- Set a daily goal during work sessions each day and STICK TO IT!!1!
- No time constraints, make sure we have enough time for our outside priorities.
Communication Expectations (How and often will we communicate? How do we keep lines of communication open? How will we make decisions as a team?):
- Daily retros.
- If either of us works on stuff seperately, let the other know before/after doing the work.
Abilities & Growth Expectations (Technical strengths and areas for desired improvement):
- Javascript, solidify clean code/organized code. Good syntax. Getting better at collaberative work.
- Practice & improve upon TDD skills. IMPORTANT!
Workload Expectations (What features do we each want to work on?):
- We're planning on working together, and implementing features together, as much as possible for this project.
Workflow Expectations (Git workflow/Tools/Code Review/Reviewing Pull Requests/Debugging and Problem-solving Techniques):
- Check each others git pushes, ask questions, clarify etc.
Expectations for giving and receiving feedback:
- My feelings won't be hurt if there is constructive criticism...be clear about if someone is going to fast/slow and determine how to work through that.
Project management tools we will use (GitHub projects or Trello are popular tools):
- GitHub projects might be good cause it's already in github.
- this.id
- this.name
- this.estimatedCost
- this.name
- this.id
- this.image
- this.ingredientes (array of ingredient names)
- this.isFavorite (boolean)
- this.instructions
- this.tags
bookmarkRecipe() => push this.id into user.favRecipes
addToRecipesToCook() => push this.id into user.recipesToCook
- this.name
- this.id
- this.pantry (array of objects (ingredient, amount)
- this.favRecipes (array of fav recipe names)
- this.recipesToCook (array of selected recipe names
- this.missingIngredientCost (array of missing ingredient costs)
checkPantry(recipe) => return diff of pantry vs required ingredients via id & run getMissingIngredientCost()
getMissingIngredientCost() => add costs of all items in this.missingIngredientCost
modifyPantry() => add/remove items within this.pantry
searchFavRecipes() => if search === favRecipes.recipe.ingredients || favRecipes.recipe.name
searchRecipesToCook() => if search === recipesToCook.recipe.ingredients || recipesToCook.recipe.name