Anonymous submission · under review

LessonWorld

From static educational media to interactive, executable lessons authored by agents.

Every lesson on this page was generated by LessonAgent from a textbook figure and a short brief. Each one is a live state machine: learners drag, rotate, type equations and answer questions, and the lesson branches on what they do.

A lesson you can act on, not a video you watch

1The agent writes it in our own TypeScript DSL (LessonEngine)

Our own TypeScript DSL (LessonEngine)TS
explorable({
  id: "aim",
  viz: { name: "frog" },
  controls: [{ key: "angle", kind: "slider",
               min: 5, max: 85 }],
  goal: { key: "angle", equals: 45 },  1
  ask: true, next: "twins",             2
}),
mcq({
  id: "twins",
  prompt: md("30° or 60°: which lands farther?"),
  choices: [
    { text: "60°",
      misconception: "steeper-is-farther" },
    { text: "They tie", correct: true },
  ],
  onWrong: "compare", next: "why",       3
}),
// the re-teach: show both hops, then ask again
explain({
  id: "compare",
  text: md(
    "$30° + 60° = 90°$, so they share a landing."),
  viz: { name: "frog", props: { angle: 30, ghost: 60 } },
  next: "twins",
}),
1 waits until the learner finds 45°2 the learner can ask the tutor3 a wrong answer detours through the re-teach

2LessonEngine runs it as an interactive lesson

Six generated lessons · played by a scripted learner · sped up

3The lesson adapts to what each learner does

A fixed video is a linear sequence of frames, the same for everyone. Our lesson is a game-like state machine: at each branch the next step depends on the learner's action, so different learners take different paths to the end. Fixed video a linear sequence of frames, the same for every viewer Our lesson ?
The lesson adapts to each learner's actions: a game-like state machine. Learner 1 finds the answer and moves straight on.

Generated lessons

The 20 lesson-level benchmark topics. Pick one to play it here, or open it full screen. Each lesson was generated from the textbook figure shown beside it and a written brief.

Tips. Lessons are narrated, so turn your sound on. Press play or step through with the controls, and try the figure: most respond to dragging, sliders or typed input. The live AI tutor needs a server and is switched off in this static copy; everything else runs in your browser. Best viewed on a laptop or desktop.

Select a lesson

Open full screen ↗

    Side-by-side with prior systems

    Every system received the same brief and textbook figure. The others produce a fixed video, slide deck or page; LessonAgent produces a lesson the learner acts on.

    Compare against
    LessonAgent oursinteractive lesson Full screen ↗

    How LessonAgent writes a lesson

    Structure first, content in parallel, and checks at every step.

    1. Plan. A planner fixes the lesson's acts, beats, transitions and remediation paths before any content is written.
    2. Build in parallel. A Page or Figure Agent builds the interactive figure while writers draft each act. They may change content, never structure.
    3. Check and repair. Deterministic checks catch broken mechanics, structure and pacing; a failing act is regenerated from its failure signal alone.
    4. Polish. An editor, a tutor stage and a review agent that watches the rendered lesson fix what only shows up once it is assembled.
    The LessonAgent pipeline: Planner, then Page or Figure Agent, parallel Act Writers, deterministic Assembly checks, Editor, Tutor and Review Agent. The output is a lesson as a state machine with hooks, goal-gated demos, checks, re-teach branches and a mastery branch.
    The LessonAgent authoring pipeline. The output is an executable state machine whose transitions respond to learner actions.

    Results

    • ≥ 97%head-to-head wins against every video system: NotebookLM, Code2Video, Manimator, PPTAgent and Paper2Video
    • 73%head-to-head wins against EduVisAgent, the strongest prior system
    • 6 of 6human-rated dimensions where LessonAgent leads the strongest prior system
    • 72.1%figure-level win rate against prior figure generators, first in every domain

    Human evaluation

    Two blind studies. In the lesson study, 10 participants worked through all four versions of a topic (30 answer sheets over all 20 topics) without knowing which system made which. In the figure study, 12 participants made 2,050 side-by-side choices.

    Automatic evaluation

    A VLM judge (Gemini 3.1 Pro) compares outputs for the same prompt blind, with left and right counterbalanced. Win rate is against an average competitor; ± is bootstrap standard error over 10,000 resamples.