Examples
Basic Typing Animation
Section titled “Basic Typing Animation”Add the typed meta option to enable terminal typing animation. Lines starting with $ (the default prompt) will type character-by-character, while output lines appear instantly:
$ npm install my-packageInstalling dependencies...Done!$ npm run buildBuild complete!Skip Button
Section titled “Skip Button”Add a skip button to let users immediately complete the animation. Useful for longer code blocks:
$ npm install express mongoose dotenv cors helmetadded 127 packages in 4.2s$ npm install -D typescript @types/node @types/express nodemon ts-nodeadded 89 packages in 3.1s$ npx tsc --initCreated a new tsconfig.json with sensible defaults$ mkdir src && touch src/index.ts$ npm run dev[nodemon] starting `ts-node src/index.ts`Server listening on port 3000Custom Speed
Section titled “Custom Speed”Control typing speed with the speed option (milliseconds per character). Default is 50ms:
Fast Typing (25ms per character)
Section titled “Fast Typing (25ms per character)”$ echo "Fast typing!"Fast typing!$ ls -latotal 42drwxr-xr-x 10 user staff 320 Dec 24 10:00 .drwxr-xr-x 5 user staff 160 Dec 24 09:00 ..-rw-r--r-- 1 user staff 1024 Dec 24 10:00 package.jsonSlow Typing (100ms per character)
Section titled “Slow Typing (100ms per character)”$ echo "Slow and dramatic..."Slow and dramatic...Click to Start
Section titled “Click to Start”Use trigger="click" to require a click before the animation begins:
$ npm install react react-domadded 2 packages in 1.2s$ npm run devServer running on http://localhost:3000Load Trigger
Section titled “Load Trigger”Use trigger="load" to start animation immediately when the page loads:
$ whoamideveloperCustom Prompt
Section titled “Custom Prompt”Use different prompt characters with the prompt option:
Python REPL
Section titled “Python REPL”>>> print("Hello, World!")Hello, World!>>> 2 + 24>>> import math>>> math.pi3.141592653589793PowerShell
Section titled “PowerShell”PS> Get-Process | Select-Object -First 3Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName------- ------ ----- ----- ------ -- -- ----------- 150 10 5000 10000 0.50 1234 1 CodePS> Write-Host "PowerShell rocks!"PowerShell rocks!Root User
Section titled “Root User”# apt updateHit:1 http://archive.ubuntu.com/ubuntu focal InReleaseGet:2 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]# apt install nginxReading package lists... DoneBuilding dependency treeCustom Delays
Section titled “Custom Delays”Fine-tune animation timing:
$ echo "Starting in 1 second..."Starting in 1 second...$ echo "500ms between lines"500ms between linesMultiple Commands
Section titled “Multiple Commands”The animation handles multiple commands naturally:
$ cd my-project$ git initInitialized empty Git repository in /home/user/my-project/.git/$ git add .$ git commit -m "Initial commit"[main (root-commit) abc1234] Initial commit 5 files changed, 100 insertions(+)$ git remote add origin git@github.com:user/my-project.git$ git push -u origin mainEnumerating objects: 10, done.Counting objects: 100% (10/10), done.Writing objects: 100% (10/10), 2.50 KiB | 2.50 MiB/s, done.Total 10 (delta 0), reused 0 (delta 0)To github.com:user/my-project.git * [new branch] main -> mainBranch 'main' set up to track remote branch 'main' from 'origin'.Non-Typed Code Block
Section titled “Non-Typed Code Block”Code blocks without the typed option behave normally:
function greet(name) { return `Hello, ${name}!`;}
console.log(greet("World"));Terminal Frame with Typing
Section titled “Terminal Frame with Typing”Works with terminal frame titles:
$ npm install express mongoose dotenvadded 57 packages in 3.2s$ npm install -D nodemon typescript @types/nodeadded 42 packages in 2.1s$ npx tsc --initCreated a new tsconfig.jsonOutput Delay
Section titled “Output Delay”Add a pause before output appears to simulate command execution time:
$ npm run buildCompiling TypeScript...Build completed successfully!$ npm testRunning tests...All 42 tests passed!Typing Variance
Section titled “Typing Variance”Add natural randomness to typing speed for a more realistic feel. A variance of 0.3 means ±30% speed variation. The effect includes occasional “thinking pauses” that simulate natural hesitation:
$ git commit -m "feat: implement user authentication with JWT tokens and refresh token rotation"[main a1b2c3d] feat: implement user authentication with JWT tokens and refresh token rotation 8 files changed, 342 insertions(+), 12 deletions(-)$ npm run test -- --coverage --watchAll=false --testPathPattern="auth"PASS src/auth/auth.service.spec.tsPASS src/auth/jwt.strategy.spec.tsTest Suites: 2 passed, 2 totalTests: 12 passed, 12 totalCoverage: 94.2%Loop Mode
Section titled “Loop Mode”Enable continuous replay with the loop option:
$ dateWed Dec 25 12:00:00 UTC 2024$ uptime12:00:00 up 42 days, 3:14Step-Through Mode
Section titled “Step-Through Mode”Pause after each line and wait for user interaction. Click on the code block or press Space/Enter/Arrow keys to advance:
$ Step 1: Clone the repositoryCloning into 'my-project'...$ Step 2: Install dependenciesInstalling packages...$ Step 3: Start the serverServer running on port 3000Combined Features
Section titled “Combined Features”Combine multiple options for the ultimate experience:
$ docker compose up -dCreating network "app_default"...Creating app_db_1 ... doneCreating app_redis_1 ... doneCreating app_web_1 ... done$ docker compose psNAME STATUS PORTSapp_db_1 running 5432/tcpapp_redis_1 running 6379/tcpapp_web_1 running 0.0.0.0:3000->3000/tcp