The course kit
Every exercise in the course as plain files. The same models you can run in the browser, packaged to hand to a class, mark up in an editor, or run from the command line — rebuilt from the course sources on every deploy, so a bundle is never out of step with the chapter it belongs to.
Two bundles
Same 23 exercises, drawn from 28 chapters. They differ in one respect: whether the answers are in the box.
Exercises only
Starters, prompts, and run configurations — no solutions, no expected metrics. The set to hand a class before the answers are discussed.
cfdl-exercises.zipFull kit
Everything above plus solution.cfdl and the expected metrics for each exercise — the instructor's copy, and the answer key for self-study.
What is inside
One directory per exercise, named for the chapter it belongs to:
exercises/
04-streams-and-schedules/
billing-terms/
README.md the prompt, and what to check before running
model.cfdl the starter — the exercise is to finish it
run.json the run configuration the chapter uses
solution.cfdl one solution (full kit only)
expected.json the metrics it produces (full kit only)Running one
Every exercise is an ordinary model directory, so the command-line tools take it as-is — compile it, then run the result against the exercise's own configuration:
cfdl compile exercises/04-streams-and-schedules/billing-terms --out /tmp/ir.json cfdl run /tmp/ir.json --out /tmp/results.json \ --config exercises/04-streams-and-schedules/billing-terms/run.json
Nothing is required beyond the CLI — installing it takes a minute. An exercise that uses a domain pack says so in its model header, and needs --packs pointed at a pack directory. If you would rather not install anything, every exercise also runs in the page it belongs to.
Teaching it
The full kit's expected metrics make marking mechanical: an exercise is right when its solution compiles, runs, and reproduces them. What that cannot tell you is whether a model says what the deal means, which is the course's real subject — so the instructor notes carry rubrics for that, alongside session plans, per-chapter discussion prompts and two ways to run the capstone.
Read the instructor notes