Skip to content

Roadmap

Planned work, in suggested priority order:

  1. Extend renderer tests for wide glyphs, combining marks, emoji, and fallback fonts, then fix differences from expected terminal output.
  2. Pass live terminal mode state to libghostty-vt::key::Encoder. Test applications that switch cursor-key or keypad modes.
  3. Decide whether library callers should receive images, frames, and state snapshots without writing files. Runner::run_artifacts already returns final terminal state.
  4. Consider injectable process, clock, and filesystem interfaces if direct library use grows. These would let tests exercise timing and failures without real shells or media files.
  5. Add benchmarks for rendering, state compaction, frame decoration, and GIF encoding once their behavior settles.
  6. Keep MP4/WebM encoding in optional ffmpeg unless users need native encoding. Native support would add codec dependencies and platform tests.
  7. Watch for a supported libghostty frame-capture API. The Rust bindings Betamax uses do not currently expose one.

See the repository roadmap for details and Differences from VHS for compatibility and unsupported features.