Skip to content

Commit 3420acd

Browse files
committed
deploy: 1d168ec
1 parent 5dfe09d commit 3420acd

21 files changed

Lines changed: 34 additions & 69 deletions

File tree

docs/conventions/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
text-cooklang-gray-700 hover:bg-cooklang-gray-100">Blog
2929
</a><a href=/about/ class="block px-4 py-2 text-base font-medium rounded-md transition-colors duration-150
3030
text-cooklang-gray-700 hover:bg-cooklang-gray-100">About
31-
</a><a href=https://www.buymeacoffee.com/dubadub target=_blank rel="noopener noreferrer" class="block px-4 py-2 bg-yellow-400 text-gray-900 font-medium text-sm rounded-md">☕ Buy me a coffee</a></nav></div></header><main class=flex-1><div class=bg-white><div class="container mx-auto px-4 py-8"><div class="flex gap-8"><aside class="hidden lg:block w-64 flex-shrink-0"><nav class="sticky top-20"><h3 class="font-semibold text-cooklang-gray-900 mb-4">Documentation</h3><ul class=space-y-2><li><a href=/docs/getting-started/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Getting Started</a></li><li><a href=/docs/spec/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Cooklang Specification</a></li><li><a href=/docs/conventions/ class="block py-1 px-2 text-sm rounded bg-cooklang-orange text-white">Conventions</a></li><li><a href=/docs/for-developers/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">For Developers</a></li><li><a href=/docs/syntax-highlighting/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Syntax Highlighting</a></li><li><a href=/docs/examples/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Examples</a></li><li><div class="font-medium text-cooklang-gray-700 mb-2 mt-4">Use Cases</div><ul class="ml-4 space-y-1"><li><a href=/docs/use-cases/importing-recipes/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Importing Recipes</a></li><li><a href=/docs/use-cases/shopping/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Shopping Lists</a></li><li><a href=/docs/use-cases/recipe-discovery/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Recipe Discovery</a></li><li><a href=/docs/use-cases/publishing-recipes/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Publishing Your Recipes</a></li><li><a href=/docs/use-cases/static-website/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Hosting Recipes as a Static Website</a></li><li><a href=/docs/use-cases/meal-planning/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Meal Planning</a></li><li><a href=/docs/use-cases/pantry/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Pantry Management</a></li><li><a href=/docs/use-cases/reports/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Reports and Data Management</a></li><li><a href=/docs/use-cases/cookbook-creation/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Creating Cookbooks</a></li><li><a href=/docs/use-cases/raspberry-pi/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Raspberry Pi Kitchen Server</a></li></ul></li><li><a href=/docs/getting-started-commands/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50"></a></li></ul></nav></aside><article class="flex-1 overflow-x-auto"><header class=mb-8><h1 class="text-4xl font-bold text-cooklang-gray-900 mb-4">Conventions</h1></header><div class="prose prose-lg max-w-none text-cooklang-gray-700"><p>There are things which aren't part of the language specification but rather common conventions used in tools built on top of the language.</p><h2 id=file-types>File Types</h2><p>The Cooklang ecosystem uses the following file types:</p><ul><li><strong><code>.cook</code> files</strong> — recipes written as plain-text instructions with Cooklang markup.</li><li><strong><code>.menu</code> files</strong> — meal plans that reference recipes. A <code>.menu</code> file is a valid Cooklang file that uses sections for days and recipe references to compose a plan.</li><li><strong><code>.shopping-list</code></strong> — a shopping list definition combining recipe references and free-hand ingredients. Hidden file (one per directory).</li><li><strong><code>.shopping-checked</code></strong> — an append-only log tracking which ingredients have been checked off. Hidden companion to <code>.shopping-list</code>.</li></ul><h3 id=menu-files>Menu Files</h3><p>Menu files use sections to organise days (or meals) and recipe references to pull in dishes. Recipe paths are relative to the root recipe directory, without the <code>.cook</code> extension.</p><div class=code-toolbar><pre class=language- data-language><code class=language->= Monday
31+
</a><a href=https://www.buymeacoffee.com/dubadub target=_blank rel="noopener noreferrer" class="block px-4 py-2 bg-yellow-400 text-gray-900 font-medium text-sm rounded-md">☕ Buy me a coffee</a></nav></div></header><main class=flex-1><div class=bg-white><div class="container mx-auto px-4 py-8"><div class="flex gap-8"><aside class="hidden lg:block w-64 flex-shrink-0"><nav class="sticky top-20"><h3 class="font-semibold text-cooklang-gray-900 mb-4">Documentation</h3><ul class=space-y-2><li><a href=/docs/getting-started/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Getting Started</a></li><li><a href=/docs/getting-started-commands/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">CookCLI: Getting Started</a></li><li><a href=/docs/spec/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Cooklang Specification</a></li><li><a href=/docs/conventions/ class="block py-1 px-2 text-sm rounded bg-cooklang-orange text-white">Conventions</a></li><li><a href=/docs/for-developers/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">For Developers</a></li><li><a href=/docs/syntax-highlighting/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Syntax Highlighting</a></li><li><a href=/docs/examples/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Examples</a></li><li><div class="font-medium text-cooklang-gray-700 mb-2 mt-4">Use Cases</div><ul class="ml-4 space-y-1"><li><a href=/docs/use-cases/importing-recipes/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Importing Recipes</a></li><li><a href=/docs/use-cases/shopping/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Shopping Lists</a></li><li><a href=/docs/use-cases/recipe-discovery/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Recipe Discovery</a></li><li><a href=/docs/use-cases/publishing-recipes/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Publishing Your Recipes</a></li><li><a href=/docs/use-cases/static-website/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Hosting Recipes as a Static Website</a></li><li><a href=/docs/use-cases/meal-planning/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Meal Planning</a></li><li><a href=/docs/use-cases/pantry/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Pantry Management</a></li><li><a href=/docs/use-cases/reports/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Reports and Data Management</a></li><li><a href=/docs/use-cases/cookbook-creation/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Creating Cookbooks</a></li><li><a href=/docs/use-cases/raspberry-pi/ class="block py-1 px-2 text-sm rounded text-cooklang-gray-600 hover:text-cooklang-orange hover:bg-cooklang-gray-50">Raspberry Pi Kitchen Server</a></li></ul></li></ul></nav></aside><article class="flex-1 overflow-x-auto"><header class=mb-8><h1 class="text-4xl font-bold text-cooklang-gray-900 mb-4">Conventions</h1></header><div class="prose prose-lg max-w-none text-cooklang-gray-700"><p>There are things which aren't part of the language specification but rather common conventions used in tools built on top of the language.</p><h2 id=file-types>File Types</h2><p>The Cooklang ecosystem uses the following file types:</p><ul><li><strong><code>.cook</code> files</strong> — recipes written as plain-text instructions with Cooklang markup.</li><li><strong><code>.menu</code> files</strong> — meal plans that reference recipes. A <code>.menu</code> file is a valid Cooklang file that uses sections for days and recipe references to compose a plan.</li><li><strong><code>.shopping-list</code></strong> — a shopping list definition combining recipe references and free-hand ingredients. Hidden file (one per directory).</li><li><strong><code>.shopping-checked</code></strong> — an append-only log tracking which ingredients have been checked off. Hidden companion to <code>.shopping-list</code>.</li></ul><h3 id=menu-files>Menu Files</h3><p>Menu files use sections to organise days (or meals) and recipe references to pull in dishes. Recipe paths are relative to the root recipe directory, without the <code>.cook</code> extension.</p><div class=code-toolbar><pre class=language- data-language><code class=language->= Monday
3232

3333
@./mains/pasta carbonara{2}
3434
@./sides/green salad{}

0 commit comments

Comments
 (0)