Dishout Recipes
Loading the kitchen...

Make my own recipes

Cookbook

All recipes should be defined in a global manifest file called `.recipes.json`. This maps a given key to the relative filepath of your recipe JSON file.

The `collections` key allows one to browse a list of all recipes by visiting the `/g/{username}/{reponame}` URL.

Visit the JSON schema to learn more.

{ "recipes": { "potato-candy": "desserts/potatos/candy.json", "caramel-apple": "caramel-apple.json" }, "collections": { "desserts": { "recipes": [{ "key": "potato-candy", "label": "Potato Candy" }, { "key": "caramel-apple", "label": "Caramel Apple" }] } } }

Then, the URL `/g/{username}/{reponame}/potato-candy` would look for a file in the GitHub repo called `desserts/potatos/candy.json`

Alternatively, each recipe can be hosted in individual repos. In that case, the URL `/g/{username}/{reponame}` would look for a file in the repo called `.recipe.json`

Cookbook validator

Enter your recipe below to check it against the JSON schema. Errors will be sent to the browser console.

Recipe JSON

Each recipe exists as a JSON file which is placed in a GitHub repository. Alternatively, these may be YAML files. The specification is below.

Visit the JSON schema to learn more.

{ "author": "Nick Felker", "recipe": "Potato Candy", "spec": "v0.1.0", "tags": "potato, candy", "servings": 24, "prelude": { "description": "Potato candy is...", "images": [{ "src": "http://example.com/potato1.png", "description": "Potato" }], "videos": [{ "youtube": "youtubeid" }] }, "steps": [{ "description": "Cut the potato", "ingredients": [{ "item": "Russet potato", "amount": 1, "unit": "" }], "equipment": [{ "item": "Potato slicer" }], "prepTime": { "amount": 5, "unit": "minutes" }, "cookTime": { "amount": 0, "unit": "" }, "images": [{ "src": "http://example.com/potato2.png", "description": "Sliced potato" }], "videos": [{ "youtube": "youtubeid" }] }, { "description": "Mix in powdered sugar until mxied well", "ingredients": [{ "item": "Powdered sugar", "min": 4, "max": 6, "unit": "cups" }], "equipment": [{ "item": "Mixing bowl" }, { "item": "Wooden spoon" }], "prepTime": { "amount": 3, "unit": "minutes" }, "cookTime": { "amount": 0, "unit": "" }, "images": [{ "src": "http://example.com/potato3.png", "description": "Mixed potato" }], "videos": [{ "youtube": "youtubeid" }] }] }

Recipe validator

Enter your recipe below to check it against the JSON schema. Errors will be sent to the browser console.