Skip to main content

Recipe Grid is a collection of standalone utilities and also a Python library for describing recipes in a tabular form, as illustrated by the following (rather tasty) recipe below for tiffin:

docs/source/_static/tiffin_example.png

These recipes have several advantages over traditional recipe descriptions:

  • Recipes are typically more concise.

  • Ingredients and method are shown together so no need to cross-reference between the two.

  • Parts of the method are never “hidden” in an ingredients list (e.g. ‘1 onion, finely chopped’)

  • Opportunities to reorder steps or do them in parallel (or not!) are easy to spot while still providing a suggested order.

Recipes are described in Markdown files using a convenient to write recipe description language. For example, the recipe above was generated from the following Markdown:

Tiffin
======

A delicious, chocolatey treat.

    6 tsp of cocoa powder
    2 tbsp of golden syrup
    1/2 cup of butter
    1/2 cup of sugar
    16oz of digestives
    200g of chocolate

    cover(
        mix(
            heat until bubbling (cocoa powder, golden syrup, butter, sugar),
            crush(digestives)
        ),
        melt(chocolate)
    )

Getting Started

You can install recipe grid from PyPI using:

$ pip install recipe_grid

Then head over to the tutorial or jump straight into the main documentation.

Development

Development dependencies, and an editable install can be setup using:

$ pip install -e .
$ pip install -r requirements-test.txt

Tests can be run using:

$ pytest

Other pre-commit hooks can be run using:

$ pre-commit run -a

And build the documentation using:

$ pip install -r requirements-docs.txt
$ make -C docs html

What about version 1?

Recipe Grid 2 is a rewrite/reimagining of its predecessor which ended up being one of those quick hacks which went on to live for a great many years. Recipe Grid 2’s recipe format is not quite backward compatible but is largely a superset of the old format and upgrading existing recipes is not an arduous task.

Recipe Grid 2 has many additional features while retaining a very similar recipe description language. Key improvements include:

  • More consistent recipe syntax and data model

  • Recipes live within Markdown files

  • Supports Directed Acyclic Graph (DAG) recipes; not just trees

  • Can scale more than just ingredient quantities in a recipe

  • Better error messages

  • Fewer foot-guns

  • Linter included to spot common errors

  • Better HTML rendering
    • Improved readability

    • Includes mouseover unit conversions

    • Native serving counts and applied scaling more clearly indicated

  • Better static sites
    • Links to alternative scaling of recipes

    • Browse without selecting a scale

    • Clearer navigation

    • Supports multiple levels of hierarchy

    • Supports custom messages on home and category pages

    • Much faster and more robust static site generator

  • Extensive documentation

  • Large test suite

  • (Limited) Python API for parsing and inspecting recipes

Metadata

Release files for recipe-grid 2.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for recipe-grid 2.1.1
File Size Uploaded
recipe_grid-2.1.1.tar.gz 184.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for recipe-grid 2.1.1
File Interpreter ABI Platform
recipe_grid-2.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 275.4 kB

Release files / recipe_grid-2.1.1.tar.gz

Download URL recipe_grid-2.1.1.tar.gz
Size 184.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f6ea2d6ab134daa326b955ee99506418ba2738e719ac41d695e7a670128fa841
BLAKE2b-256 checksum
How to use checksums
ec2a7d4be71f4a1d95b68910d2caf3ed180c306b02806eabc83e872d0fcc87cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release files / recipe_grid-2.1.1-py3-none-any.whl

Download URL recipe_grid-2.1.1-py3-none-any.whl
Size 90.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d5c2e19010db9975bb4311396092fe576a7b25baad48beee96b681f128a8f54f
BLAKE2b-256 checksum
How to use checksums
864645c057f81e70e5fcd756f3ccc8d471c8b3e0e7dc7bec4ce96abd781d5c8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

2.1.1 This release

2 release files

2.1.0

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page