# Roadmap

## Setup Base Models

## Ingredient

- ✅ Mongoose Model
- ✅ Ingredient Factory
- ✅ IngredientList Model
- ✅ IngredientList Factory
- api
  - ✅ add / remove mulitple ingredients
  - ✅ reorder ingredients

### Recipe

– ✅ Mongoose Recipe model
– ✅ Recipe Factory

- api
  - ✅ CRUD
  - update/ create with entire ingredient list

### RecipeInstructions

subDocument on recipe model
– Mongoose instructions schema (initially markdown)
– Add to Recipe Factory

### Session

- Mongoose Model
- Session Factory
- Create / Update session
- Session invalidation (logout)
  – api
  - retrieve session (login)
  - invalidate session (logout)

### User

- User Model
  - Profile
  - Account link
- User Roles
- User Factory
- api
  - CRUD

### Account

- Account Model
  - Account type
  - Billing Info

### Recipe Collection

- ✅ RecipeCollection model
- ✅ RecipeCollection Factory
- ✅ RecipeCollection Schema
  - ✅ Fetch RecipeCollection
    - filter by collection type
  - ✅ Create RecipeCollection
  - ✅ Delete RecipeCollection
  - ✅ Update RecipeCollection
  - ✅ Add Recipe
  - ✅ Remove Recipe
  - ✅ update Recipe order

### Smart Collection

- SmartCollection model
  - Filter model / types
- SmartCollection Factory
- SmartCollection Schema
  - Create SmartCollection
  - Delete SmartCollection
  - Update SmartCollection

## Sharing

- Share recipe
