1. Get a Recipe into Soustack
Start with a minimal JSON recipe. This establishes a portable envelope for interchange without requiring parsed quantities, prep annotations, or timing data.
Minimal recipe structure
A minimal Soustack recipe can be just structured text. This is sufficient for transport, display, and basic interoperability. When no stacks are declared, the recipe remains a simple, portable data envelope.
{
"$schema": "https://spec.soustack.org/soustack.schema.json",
"name": "Simple Pancakes",
"ingredients": [
"2 cups flour",
"2 eggs",
"1½ cups milk"
],
"instructions": [
"Whisk all ingredients together.",
"Cook on a hot griddle until golden."
]
}This form does not require parsed quantities, prep annotations, or timing data. It establishes a stable envelope without committing to advanced behavior.
Required fields
At minimum, a Soustack recipe needs:
name— The recipe nameingredients— An array of ingredient strings or objectsinstructions— An array of instruction strings or objects
The $schema field is recommended to enable validation and editor support.
What you can do with minimal recipes
Even with this minimal structure, you can:
- Validate the recipe structure
- Display the recipe in applications
- Exchange recipes between systems
- Store recipes in a portable format
Next steps
Once you have a recipe in this format, you can see what it can do with validation and display tools.
When you're ready for more capabilities, you can upgrade your recipe by adding stacks.