Skip to content

demonator

Typewriter-style text display for terminal demos.

Demonator reads a YAML config file and "types" commands out character-by-character with realistic timing, then executes each command when you press Enter. It makes live terminal demos look natural and polished.

  • Getting Started — Install demonator and create your first demo in under a minute
  • Configuration — Full reference for all global options, per-step overrides, and CLI flags
  • Features — Commentary, fake output, chapters, highlighting, conditionals, and more
  • Examples — Ready-to-use demo configs for common scenarios

Quick start

cargo install --path .

Create demo.yml:

speed: 20
clear: true
highlight: true

steps:
  - comment: "Let's build the project."
    style: cyan
  - text: "cargo build --release"
  - text: "cargo test"
  - text: "echo 'All done!'"

Run it:

demonator

Features

Feature Description
Commentary Styled narration text between commands
Fake output Pre-defined command output for offline demos
Syntax highlighting Colorize commands as they are typed
Chapters Named sections with keyboard navigation
Auto-advance Hands-free mode for recording with asciinema
Wait-for-pattern Pause until regex matches in output
Setup & teardown Hidden environment prep and cleanup
Interactive commands Expect-style responses to prompts
Conditional steps Branch based on captured variables
Authoring tools Dry-run preview and hot reload

How it works

  1. Demonator reads your YAML config
  2. For each step, it types the command character-by-character with realistic jitter
  3. You press Enter to execute the command
  4. The real command runs (or fake output is shown)
  5. Repeat until the demo is done

The result looks like a human typing commands live — but with perfect accuracy and timing every time.