# MEALS This is my own personal recipe database and meal planner STATUS: janky, proof of concept, unsafe, used in production ## ABOUT recipes.rec contains two types: meals and recipes a meal may contain many recipe components. ``` %rec: meal %doc: a meal can consist of several recipes %key: name %type: recipe rec recipe %type: name line %mandatory: name recipe %allowed: name recipe ``` Example: ``` name: Lemon Couscous w Salmon and roast broccoli recipe: lemon couscous recipe: frozen salmon patties recipe: roast brocolli ``` and a recipe comprises several ingredients and steps. ``` %rec: recipe %doc: a recipe for one thing %key: name %type: name,ingredient,step line %mandatory: name ingredient step %allowed: name ingredient step ``` Example: ``` name: lemon couscous ingredient: couscous ingredient: veggie stock ingredient: lemon juice ingredient: garlic step: cook the couscous in the stock step: drain step: add lemon and garlic ``` menu.rec contains meals for breakfast, lunch, and dinner for each day. ``` %rec: menu %doc: a menu of meals %type: breakfast rec meal %type: lunch rec meal %type: dinner rec meal %type: day line %type: date date %allowed: day date breakfast lunch dinner %mandatory: day date breakfast lunch dinner ``` Example: ``` day: Wednesday date: 2024-02-07 breakfast: eggs n peanutbutter lunch: chipotle bowl dinner: Lemon Couscous w Salmon and roast broccoli ``` Scrips: - the justfile contains scrips for creating a `.rem` file for remind(1). (from there you can use the `rem2ics` utility to create a calendar file, or `rem2ps` to create a pdf.) - `/bin/pdf.sh` will create a simple pdf menu via groff and tbl. - `/bin/indredients.sh` will print a list of ingredients based on the week's menu so you can plan your shoping. ## YOU WILL NEED - recutils - groff ## GETTING STARTED - add recipes and meals to db/recipes.rec - plan your weekly menu in db/menu.rec - `just menu` to create `.rem` and `.pdf` menus for the week - `just shopping` to print a shopping list ## TODO This might eventually become part of the backend for supervegan.neocities.org - [x] remove zx dep (i thought it would make dates easier in the beginning) - [x] parameterize the date for which the week should be calculated. - [x] quantity for recipe ingredient? - [x] yield for recipe? - [ ] link recipes? e.g., Egg Replacement in Black Bean Patties - [ ] total quantities per ingredient in ingredient list - [ ] review/confirm shopping list - [ ] add 'snack' meal? e.g. elevenses, tea