Project Readme.MD - Team-Pickle-juice/code-301-food-app GitHub Wiki
Final 301 Project
Team Name
Team Pickle Juice
Team Members
- Adam Owada
- Bhagirath Bhatt
- Brendon Hampton
- Chuck Li
- Richard Whitehead
Project Idea
Food and Budgeting App
-
As the user I want to create a profile with my name, daily calorie intake, and food allergies.
-
As a user, I want to view different meal options based on my profile information
Stretch goals
-
As a user, I want to be able to add ingredients to my pantry
-
As the user I want to know an estimated budget for ingredients I need to buy for a meal.
-
Allow users to prepare a meal with what they have in their pantry.
Navigation
Wireframes
5/11/2020
ToDo's
Project Manager
-Brendon
Create Index.ejs -Bhagirath Bhatt
Create Server.js - Chuck Li
Create CSS files, Pages folder for EJS, Partials folders - Richard Whitehead
Create Data folder with Schema.sql, Wireframe images
5/12/2020
Project Manager
- Rich Whitehead
Priorities of Work
Create profile.ejs and register.ejs file in pages folder - Brendon and Adam
Create profile results in the database to allow users to add, update and delete profiles - Bhagirath and Chuck
Database name
- food_app
table name
- profiles
5/13/2020
Project Manager
- Bhagirath Bhatt
Tasks to complete
- First priority
- Fix the user profile bug and get it to render. - Get John.
- Goal - today
- For MVP โ we aim to get a deployed working app.
Brandon and Chuck โ pair programming working on the.
- Render profile
- after registering a new user, the login button is not checking through database, verifying the user has been added and displaying all the users on a profiles page.
- Check the if statement for inside the login function on server.js.
- check routes inside server.js.
- check routes inside index.ejs
- call appropriate help if 15 minutes has passed
- Create Form
- Create a CSS folder
- add displayed image to index.ejs in mobile view per mobile wireframe diagram.
Adam and Richard โ pair programming working on API keys.
- To be able to search recipes that gives calorie count
- Create ejs page for searching recipes
- Add form wit GET to search through the API spoonacular
- Worked on search recipes profile
Today's Challenges
- An accidental merge of master to DEVbranch
- Consequently created other issues leading to lost time, espacially for Brendon and Chuck
Wins!
- Successfully resolved the issues anf moved ahead.
- Achieved MVP!!!
5/14/2020
Project Manager
Adam
Frontend Team
Rich and Chuck
Backend Team
Brendon and Bhagirath
Tasks Completed
Backend
- updated schema.sql to include meal_plan table with: request.body.username, request.body.recipe_id, request.body.img_url, request.body.ingredients, request.body.instructions, request.body.price
- expanded Recipe constructor to include image and recipe_id
- created '/add-recipe' route
- created addRecipe function to insert recipe into meal_plan table
- created '/saved-meals' route
- created savedMealsHandler to return saved meals
Frontend
- updated search-results.ejs page to display images
- updated search-results.ejs page to include "View Recipe Information" button
- created mustache templating for ingredients, cooking instructions, and price information
- added jQuery event handler on "View Recipe Information" button
- created recipeInformation callback function that uses $.ajax to make an API call on selected recipe that returns price information
- created renderRecipeInfo function to render mustache template with price information
Tasks to Do Tomorrow
Backend
- update savedMealsHandler to only return recipes based on username
- update registerUser function to handle multiple allergies, and the possibility of no allergies
- update queryStringParams in the recipeSearch function so that the api call returns recipes that do not include allergies in the userโs profile
Frontend
- fix partials, make sure ejs pages include the partials
- partials: js -> scripts
- add "Add to My Meal Plan" button to search-results.ejs page
- update search-results.ejs so that "Add to My Meal Plan" button sends username and recipe_id to backend
- expand renderRecipeInfo function to return more ingredients and instructions
- add logic for recipes that have a link for instructions
- create saved-meals.ejs that displays user's saved recipes
- add jQuery on register.ejs to allow for multiple allergies
5/15/2020
Project Manager
Adam
Frontend Team
Rich and Chuck
Backend Team
Brendon and Bhagirath
Tasks Completed
Backend
- updated registerUser function to include allergy choices in user profile
- updated recipeSearch function to exclude allergies saved in profile
Frontend
- updated register.ejs to include 4 allergy choices with the ability to expand this list
- updated partials and 'include' sections on ejs pages
- progress on mustache (ran out of api requests)
Tasks to Do Tomorrow
- complete mustache templating for "View Recipe Information" button
- expand profile.ejs to display user's saved recipes for 1 day
- CRUD for saved recipes
- add basic css styling
5/16/2020
Project Manager
Chuck
##Tasks for the Day
-
server.js / registerUser | Adam/Brendon
- Fix JOIN issue to to render recipes for users that only have 1 allergy
-
app.js / renderRecipeInfo
- Include 'Servings' to the additional information for each recipe (Make sure to add this in the header to be rendered using Mustache" | Bhagirath/Richard
-
head.ejs
- Modify the script for Mustache template text from'Price' to "Price Per Serving"
- Add Servings to Mustache template
-
server.js / handleDelete
- Delete Profile button needs to also delete meals stored in the meal_plan table for the user. | Adam/Brendon
-
search-results.ejs
- Add 'Save to Meal Plan' button - that calls addRecipe Function
-
profile.ejs
- Saved meals need to be displayed in the profile.ejs page
- Add an 'Update Profile' button - This will allow the user to update his/her name, calories, and allegies
- For Each displayed meal:
- Add an 'Update Meal' button - User can update ingredients, instructions, recipe name, etc.
- Add a 'Delete Meal' button - Will delete selected Meal from meal_plan table
- For Each displayed meal:
-
search-results.ejs
- Add 'Hide' functionality for additional information displayed per recipe. | Brendon/Bhagirath