diff --git a/AGENTS.md b/AGENTS.md index 744f1e620..7258d39dc 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -41,7 +41,7 @@ This project is a personal recipe collection managed as a documentation site usi * **Front Matter:** Markdown files use front matter for metadata like comments and tags. * **Dependencies:** Python dependencies for Zensical are managed via `pip install` in the CI workflow. `spellchecker-cli` is installed globally via `npm install`. * **Recipe Markdown Pages:** Recipe markdown pages in `docs/` should use emoji from `includes/emoji.yaml`. -* **Recipe Markdown Format:** Recipe markdown pages should follow a consistent format, including front matter for metadata (e.g., comments, tags), a main title with an emoji, an image with `loading=lazy`, a table for serving and time information, and sections for ingredients, cookware, and instructions. Instructions should be numbered steps, with `!!! tip` used for additional information. +* **Recipe Markdown Format:** Recipe markdown pages should follow a consistent format, including front matter for metadata (e.g., comments, tags), a main title with an emoji, an image with `loading=lazy`, a table for serving and time information, and sections for ingredients, cookware, and instructions. Each ingredient in the ingredients section should be prefixed with an emoji shortcode from `includes/emoji.yaml`. Instructions should be numbered steps, with `!!! tip` used for additional information. # Cooklang Specification diff --git a/Taskfile.yaml b/Taskfile.yaml index a461dd7bb..c5e4173c4 100644 --- a/Taskfile.yaml +++ b/Taskfile.yaml @@ -184,6 +184,15 @@ tasks: desc: Update git submodules cmds: - "git submodule update --init --recursive --remote" + validate: + desc: Validate zensical.toml + cmds: + - python3 -c "import tomllib, sys; tomllib.load(open('zensical.toml', 'rb'))" + preconditions: + - test: test -n "$(python3 -c 'import tomllib' 2>/dev/null && echo 'found')" + msg: | + tomllib not found. Please install a Python version that includes tomllib (Python 3.11+). + silent: true default: cmds: - task -a diff --git a/cook/italian/Marry Me Butter Beans.cook b/cook/italian/Marry Me Butter Beans.cook new file mode 100644 index 000000000..dd9ffe014 --- /dev/null +++ b/cook/italian/Marry Me Butter Beans.cook @@ -0,0 +1,10 @@ +>> source: https://www.liveeatlearn.com/marry-me-butter-beans/#wprm-recipe-container-93276 +>> serves: 4 +>> total time: 15 minutes +>> tags: vegetarian, gluten-free, italian + +Heat @unsalted butter{2%Tbsp}, @garlic{4%cloves}, @salt{0.5%tsp}, @oregano{0.5%tsp}, @crushed red pepper flakes{0.5%tsp}, @smoked paprika{0.5%tsp}, and @ground black pepper{0.25%tsp} in a #large saute pan{} over medium heat. Cook for about ~{2%minutes}, until garlic is fragrant. + +Stir in @sun-dried tomatoes{0.5%cup}, @vegetable broth{1%cup}, and @butter beans{2%cans}. Continue cooking on medium, uncovered, for ~{5%minutes}. + +Stir in @fresh spinach{1%cup} until wilted, then stir in @heavy cream{1%cup}, @Parmesan{0.5%cup}, and @fresh basil{2%Tbsp}. Serve warm with crusty bread, over rice, or with pasta. diff --git a/cook/italian/Marry Me Butter Beans.jpg b/cook/italian/Marry Me Butter Beans.jpg new file mode 100644 index 000000000..c7dabd589 Binary files /dev/null and b/cook/italian/Marry Me Butter Beans.jpg differ diff --git a/docs/assets/images/marry-me-butter-beans.jpg b/docs/assets/images/marry-me-butter-beans.jpg new file mode 100644 index 000000000..c7dabd589 Binary files /dev/null and b/docs/assets/images/marry-me-butter-beans.jpg differ diff --git a/docs/italian/marry-me-butter-beans.md b/docs/italian/marry-me-butter-beans.md new file mode 100644 index 000000000..1a5657110 --- /dev/null +++ b/docs/italian/marry-me-butter-beans.md @@ -0,0 +1,56 @@ +--- +comments: true +tags: + - italian +--- +# Marry Me Butter Beans + +![Marry Me Butter Beans][1]{ loading=lazy } + +| :fork_and_knife_with_plate: Serves | :timer_clock: Total Time | +|:----------------------------------:|:-----------------------: | +| 4 | 7 minutes | + +## :salt: Ingredients + +- :butter: 2 Tbsp unsalted butter +- :garlic: 4 cloves garlic +- :salt: 0.5 tsp salt +- :herb: 0.5 tsp oregano +- :hot_pepper: 0.5 tsp crushed red pepper flakes +- :hot_pepper: 0.5 tsp smoked paprika +- :salt: 0.25 tsp ground black pepper +- :tomato: 0.5 cup sun-dried tomatoes +- :stew: 1 cup vegetable broth +- :canned_food: 2 cans butter beans +- :leafy_green: 1 cup fresh spinach +- :glass_of_milk: 1 cup heavy cream +- :cheese_wedge: 0.5 cup Parmesan +- :herb: 2 Tbsp fresh basil + +## :cooking: Cookware + +- 1 large saute pan + +## :pencil: Instructions + +### Step 1 + +Heat unsalted butter, garlic, salt, oregano, crushed red pepper flakes, smoked paprika, and ground black pepper in a +large saute pan over medium heat. Cook for about 2 minutes, until garlic is fragrant. + +### Step 2 + +Stir in sun-dried tomatoes, vegetable broth, and butter beans. Continue cooking on medium, uncovered, for 5 minutes. + +### Step 3 + +Stir in fresh spinach until wilted, then stir in heavy cream, Parmesan, and fresh basil. Serve warm with crusty bread, +over rice, or with pasta. + +## :link: Source + +- + +[1]: <../assets/images/marry-me-butter-beans.jpg> + diff --git a/zensical.toml b/zensical.toml index 98cd6b92b..c2a8ea29f 100644 --- a/zensical.toml +++ b/zensical.toml @@ -722,6 +722,7 @@ Italian = [ { "Jamie Oliver Ricotta Fritters" = "italian/jamie-oliver-ricotta-fritters.md" }, { "Macaroni & Cheese" = "italian/macaroni-&-cheese.md" }, { "Maria Agresta’s Gnocchi alla Cilentana" = "italian/maria-agresta’s-gnocchi-alla-cilentana.md" }, + { "Marry Me Butter Beans" = "italian/marry-me-butter-beans.md" }, { "Mezza Luna Lasagna" = "italian/mezza-luna-lasagna.md" }, { "Mushroom Risotto" = "italian/mushroom-risotto.md" }, { "Olive Garden Fettuccine Alfredo" = "italian/olive-garden-fettuccine-alfredo.md" },