TODO:
- Make sure mail is unique and old password is correct when updating
- Only show login or logout / Only show Register when not logged in
- Make steps movable by drag and drop
- Error checking in recipe creation looks sort of weird
- Error checking in profile looks terrible too
- Images shouldn't be mandatory for now
- Unit tests for recipe creation
- Same as above for ingredients
- Edit recipes that you own
- Layout
- Display latest recipes on home screen
- Status messages on homepage (after creation, error, etc)
DONE:
- JSON webtoken auth
- Signup and login
- Route protection
- Basic frontend functionality to create a new recipe
- Add tags for recipes
- Make sure tags auto-complete when adding them to a new recipe
- If tag doesn't exist, create a new one
- Add ingredients
- Make sure ingredients auto-complete when adding them to a new recipe
- If ingredient doesn't exist, create a new one
- What are we doing with different measurements when it comes to ingredients? (cups, liters, grams, etc)
- Add different tags for ingredients
- Before storing a recipe, the latest state of ingredients needs to be selected (amount, unit, etc.) and stored in object array. How?
- Fill out recipe with sample data that gradually gets recplaced while typing
- Where and how do we store recipe images?
- Make sure only one image can get uploaded
- Cut images and force size?
- Delete image button>
- Clean up file upload in server.js and disallow upload without image selection
- Delete ingredients from list
- Delete steps
- Edit steps
- Finish recipe creation
- Recipe Model
- Store recipe in database
- Display list of recipes
- Add sortable list of recipes (by date, tags, search, etc)
- Homepage movable preview grid with preview images
- Change list items in all recipes to grid design with image and buttons at the bottom
- Navbar tabs for all recipes, create recipe, profile
- Star recipes
- Profile page showing recipes created by this profiles as well as favorites
- form validation for profile fields