1.5 KiB
1.5 KiB
Recipes for Engineers
Store recipes in a nerdy JSON tree format and use that to generate Cooking for Engineers-style tabular recipe cards in HTML.
Right now this project is just a set of scripts.
Requirements
These scripts require the anytree
Python library.
create_recipe_json.py
This is a fairly naive script that walks you through the process of turning a recipe into a tree structure. It has you list out ingredients, and then add tasks to perform on those ingredients. You end up with a tree that is something like this:
shake and grill for 20 more mins
+-- grill for 20 mins
+-- wrap in foil
+-- season to taste
|-- salt and pepper
|-- dice
| |-- rosemary
| |-- thyme
| +-- basil
+-- lightly coat
|-- olive oil
+-- chop into quarters
+-- red potatoes
Leaves are raw ingredients, other nodes are tasks. The tree is output to a JSON file.
recipe_json_to_html.py
This script takes that JSON file and does a recursive depth-first search to render a webpage with an HTML-table-based recipe card.
Known Issues
- A single node cannot have multiple tasks done on it (nerdy reason: because a node cannot have two parents). So this cannot represent, for example, mixing cinnamon and sugar, then splitting that mixture up and doing separate subsequent operations with the two batches.