Getting Started
Record your first terminal recording with VCR# — no browser, no extra tools.
In this tutorial we'll create our first terminal recording with VCR#. We'll install the tool, write a short tape file, and run it to produce an animated SVG of a shell command. It takes about five minutes, and every step succeeds.
By the end we'll have an SVG showing Hello, VCR#! appearing in a terminal.
Note
This first recording needs no browser and no extra tools. VCR# runs the shell in-process and renders SVG directly, so all we need is the .NET runtime. FFmpeg comes later, only if we want a GIF or video.
Install VCR#
VCR# ships as a .NET global tool. We need the .NET 10 runtime installed, then:
dotnet tool install --global vcr
That's everything we need for SVG output. (FFmpeg is only required later for GIF, MP4, or WebM — see the final step.)
Let's verify the install by listing the built-in themes:
vcr themes
We should see a table of theme names with their background and foreground colors, including Dracula, which we'll
use next. If vcr isn't found, confirm the .NET tools directory is on our PATH and try a new shell.
Write the tape
A tape is a small script that tells VCR# what to type and record. Create a file named hello.tape with this
content:
Output hello.svg
Set Cols 80
Set Rows 20
Set Theme "Dracula"
Type "echo 'Hello, VCR#!'"
Enter
Sleep 1s
Each line, briefly:
Output hello.svg— the file VCR# will write (SVG, so no FFmpeg needed).Set Cols 80/Set Rows 20— the terminal size: 80 columns by 20 rows.Set Theme "Dracula"— the color scheme.Type "echo 'Hello, VCR#!'"— types the command, character by character.Enter— presses Enter to run it.Sleep 1s— pauses one second so the output stays on screen.
Run it
Now run VCR# against the tape:
vcr hello.tape
VCR# launches a real shell in-process, types our commands, records the output, and writes hello.svg. This
finishes quickly — there's no browser to start and nothing to encode for SVG.
View the result
Open hello.svg in any browser or image viewer. We'll see the command typed out and its result appear, like this:
The recording plays back in three beats: an empty terminal, the command typed character by character, and then the
Hello, VCR#! output. That character-by-character typing is what gives the recording its live, terminal-session
feel.
Next: render a GIF
To produce a GIF instead, change one line in hello.tape:
Output hello.gif
Then run vcr hello.tape again to write hello.gif.
Note
GIF, MP4, and WebM output is encoded with FFmpeg, so it must be installed and on our PATH for those
formats. SVG and PNG need nothing extra.
Where to next
- Create Your First Typing Demo — build a richer demo with navigation and editing.
- Capture Real Command Output with Exec — record the output of a real command with
Exec. - Tape File Syntax Reference — the full list of tape commands.
- Quick Capture Without Tape Files — record a one-off command without writing a tape.