🍳 Foodlangalpha

CLI: Getting Started

foodlang is the command-line tool for working with .food.yaml files. It parses and validates recipes, classifies them across the seven Foodlang levels, prints a summary, and compiles to any target — all from your terminal.

It follows the UNIX philosophy: each command does one thing well.

Commands

Command Description
validate Validate a recipe and classify its Foodlang levels
inspect Print a human-readable summary of a recipe
compile Compile a recipe to a target format
targets List available compiler targets and their fidelity

validate

foodlang validate examples/simple-latte.food.yaml
Validation: PASS

Levels:
  readable: pass
  parseable: pass
  structured_ingredients: pass
  process_aware: pass
  appliance_mappable: pass
  robot_plannable: pass
  industrial_mappable: partial

Warnings:
  - smart-appliance program names are illustrative and may vary by appliance.
  - OPC UA node IDs are not specified; output is a mapping, not executable network code.

A recipe with blocking errors exits non-zero, so validate slots straight into CI and pre-commit hooks.

inspect

foodlang inspect examples/simple-latte.food.yaml
Recipe: Simple Latte
Ingredients: 4
Steps: 4
Transformations: 3
Equipment: 3
Targets: opcua, appliance_program, mqtt
Robot actions: 4
Exports available: cooklang, schema-org, orf, pddl, foon, opcua, s88

compile

foodlang compile <file> --target <target>
foodlang compile examples/simple-latte.food.yaml --target schema-org
foodlang compile examples/simple-latte.food.yaml --target cooklang
foodlang compile examples/simple-latte.food.yaml --target opcua
foodlang compile examples/simple-latte.food.yaml --target pddl

Output goes to stdout, so it composes with everything else:

foodlang compile examples/simple-latte.food.yaml --target schema-org > latte.jsonld

targets

foodlang targets
Core:
  json
  orf
  kdl
  cooklang
  schema-org

Execution / Process:
  foodx
  food-exec
  s88
  batchml
  packml
  opcua-packml
  iec61131-sfc
  iec61131-st

OPC UA / Food & Beverage:
  opcua-commercial-kitchen
  opcua-coffee
  opcua-weihenstephan

Coffee / Brewing:
  coffee-mqtt
  appliance-program
  pourover-profile
  pourover-recipe
  brew-guide
  espresso-flow-profile
  espresso-phase-profile
  espresso-controller-profile
  espresso-stage-profile
  brewspec
  beanconqueror
  craftbeerpi
  beerjson
  beerxml

Nutrition & Labeling:
  bevfacts

Robot / Planning:
  robot-action-graph
  pddl
  foon
  ltl
  knowrob

Distribution & QR:
  qr
  qrz

What's next?