Asciinema: Terminal Recording Done Right (with Marcin Kulik)

Asciinema: Terminal Recording Done Right (with Marcin Kulik)

From Developer Voices by Kris Jenkins

February 19, 2026 · 1h 27m

About this episode

The episode discusses the evolution of Asciinema, a terminal recording tool, with its creator Marcin Kulik, exploring its architecture and development over 14 years.

I have a theory that only bad projects get finished — good ones keep finding new things to do. Asciinema is a case in point. What started as a way to share terminal sessions with friends has, over 14 years, grown into a full suite of tools covering recording, hosting, playback, and live streaming — and been rebuilt multiple times along the way. So what does it actually take to record and replay a terminal session faithfully in a browser? Joining us for this conversation is Marcin Kulik, Asciinema's creator. The project's architecture has passed through almost every interesting corner of software engineering: a Python recorder built around pseudo-terminals (PTY), a ClojureScript terminal emulator for the browser that hit performance limits with immutable data structures and garbage collection pressure, a move to Rust compiled to WebAssembly, a Go experiment that didn't last, and a new Rust CLI for concurrent live streaming backed by an Elixir/Phoenix server that calls Rust code via NIFs. The same Rust terminal emulator library now powers all three components — the browser player, the server, and the CLI. If you've ever looked at those terminal animations embedded in a README and…

People in this episode

Host: Kris Jenkins

Guest: Marcin Kulik

Topics covered

  • terminal recording
  • software engineering
  • open-source development
  • programming languages
  • project evolution
  • live streaming

Keywords

  • Asciinema
  • terminal sessions
  • recording
  • playback
  • live streaming
  • software architecture
  • open-source

Mentioned in this episode

Organizations: Asciinema

Products: Python, ClojureScript, Rust, Go, Elixir, Phoenix, WebAssembly

More episodes of Developer Voices

Explore listener stats, chart rankings, contacts and more on the Developer Voices podcast page.