explaingit

asciinema/asciinema

Analysis updated 2026-06-24

17,289RustAudience · developerComplexity · 2/5Setup · easy

TLDR

Records terminal sessions as lightweight text-based .cast files instead of video. Plays back in any terminal or in a web embed, and supports live streaming.

Mindmap

mindmap
  root((asciinema))
    Inputs
      Terminal session
      Recording command
      Stream URL
    Outputs
      cast file
      Live HTTP stream
      Web embed player
    Use Cases
      Record a CLI demo
      Stream a debug session
      Embed terminal docs on a site
    Tech Stack
      Rust
      Python
      Linux
      macOS
      FreeBSD
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Record a CLI demo as a .cast file and share the link

USE CASE 2

Live-stream your terminal to teammates over HTTP

USE CASE 3

Embed a terminal recording in docs or a blog so viewers can copy commands

USE CASE 4

Capture a debug session for an issue report without uploading a heavy video

What is it built with?

RustPythonLinuxmacOS

How does it compare?

asciinema/asciinemagfx-rs/wgpudenisidoro/navi
Stars17,28917,12817,122
LanguageRustRustRust
Setup difficultyeasyhardeasy
Complexity2/54/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Available via standard package managers on Linux, macOS, and FreeBSD.

In plain English

Asciinema is a command-line tool for recording and sharing terminal sessions. Instead of capturing a video file, it records what happens in your terminal as a lightweight text-based file in a format called asciicast (.cast). This makes the recordings highly compressible, potentially shrinking to 15% of the original size, and means they can be played back inside any terminal or embedded on a web page with a dedicated player. The key difference from screen recording software like video capture tools is that asciinema captures the actual text output of your terminal rather than pixels. This means the recording remains crisp and searchable at any size, and viewers can copy text from it. Key features include recording and local playback, live streaming (you can broadcast your terminal session in real-time to multiple viewers, either via a built-in HTTP server or through the asciinema.org hosting service), and publishing recordings online for easy sharing. The tool supports GNU/Linux, macOS, and FreeBSD. The basic commands are simple: run "asciinema rec demo.cast" to start recording, and "asciinema stream -l" to start a live stream over a local HTTP server. You would use asciinema when you want to show someone how to use a command-line tool, create documentation for a terminal workflow, share a debugging session, or demonstrate a process without recording a heavy video file. The current version (3.x) is written in Rust, an older version (2.x) written in Python also exists in the repository.

Copy-paste prompts

Prompt 1
Install asciinema on macOS, record a 30-second demo of my CLI, and embed it in a Hugo blog post
Prompt 2
Show me how to host the asciinema web player on my own site for a .cast file
Prompt 3
Use asciinema stream to broadcast my terminal to a teammate over a private URL
Prompt 4
Compare asciinema with terminalizer and VHS for recording polished terminal demos

Frequently asked questions

What is asciinema?

Records terminal sessions as lightweight text-based .cast files instead of video. Plays back in any terminal or in a web embed, and supports live streaming.

What language is asciinema written in?

Mainly Rust. The stack also includes Rust, Python, Linux.

How hard is asciinema to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is asciinema for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub asciinema on gitmyhub

Verify against the repo before relying on details.