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.

make_tree.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.

output_html.py

This script takes that JSON file and does a recursive depth-first search to render an HTML-table-based recipe card.

Known Issues

  • A single node cannot have multiple done on it. So this cannot represent, for example, mixing brown sugar and cinnamon, then splitting that mixture up and doing separate subsequent operations with the two batches.
Description
Store recipes in JSON and generate "Cooking for Engineers"-style tabular layouts.
Readme 36 KiB
Languages
Python 100%