Skip to main content
A viewer follows an explanation in which each part of the picture appears as it is spoken, so nothing is read ahead. A lesson fails when the slide says everything at once. The room reads the whole slide, finishes before the teacher does, and stops listening. DeckTalk holds each part of a diagram back until the voice reaches the word for it, so attention has nowhere else to go.

What a viewer gets

  • One idea at a time, in the order the explanation needs, because every moment waits for a phrase in the script rather than for a second on a timeline.
  • Equations typeset on the page from a data-tex attribute, drawn as the voice says them and never read out as symbols.
  • A line shown word by word under the voice, through data-words="appear" or data-words="highlight", when the wording itself is the point.
  • Chapters a learner can jump between, a transcript page to read afterwards, and captions for a viewer who needs them.

What the author writes

KaTeX ships inside the wheel and DeckTalk serves it on the page’s own origin, so an equation needs no download and no network origin. A diagram is plain HTML and CSS with a moment attribute on each part that appears, and data-describe gives each of those parts one subject that the transcript prints and the runtime gives a verb to. An element that changes the picture and describes nothing is reported as PAGE_NO_DESCRIPTION, so a lesson cannot quietly lose a step for a reader. A chapter may cover more than one section. Consecutive sections that carry the same chapter share one entry in the chapters file and one heading in the transcript, which is how a long idea is written as several short takes without giving a learner several headings for it.

The workflow

1

Start from the worked lesson

decktalk init --example lesson my-lesson writes a finished lesson about how a model learns, whose one long scene is written in markup. It is the fastest way to see the shape of one. decktalk init my-lesson writes the smaller starter instead.
2

Write the explanation, then the diagram

Say the thing, then draw the thing. Every moment needs a phrase in script.md that names it, which is what Writing for the ear is about.
3

Judge it before you build it

decktalk check reads the script, the cue file and the pages, freezes a frame either side of every cue and prices the run. decktalk words prints every spoken word with its start and its end, which is the clock a cue phrase is written against.
4

Draft it with no voice

decktalk build --no-spend paces the whole lesson on placeholder narration, so the timing is settled before a credit is spent.
5

Check every landing

decktalk verify measures the finished film and reports each reveal that came late, early or not at all. decktalk storyboard writes every slide at every cue onto one page, so the contrast and the crowding can be read before anyone watches the film.
6

Teach one section again

A better sentence is an edit and decktalk build --section 2. The rest of the lesson keeps its takes.

Where to start

Read Quickstart for the first build, Design a slide for the moments and the entrance styles, and Accessible video for the captions, the chapters and the transcript a course platform asks for. decktalk init --example lesson writes a finished lesson to start from, and Examples lists the others.

Also fits

Conference talks, onboarding material and revision videos run the same pipeline. The two use cases beside this one are technical tutorials and product demos.