readme: add demo gif
Recording script committed at assets/demo.tape — renders with charmbracelet/vhs against a real Linux+Firecracker host. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f1b17f6f8e
commit
3dceacd40a
3 changed files with 114 additions and 0 deletions
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
One-command development sandboxes on Firecracker microVMs.
|
One-command development sandboxes on Firecracker microVMs.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
Spin up a clean Linux VM with your repo and tooling preloaded, drop
|
Spin up a clean Linux VM with your repo and tooling preloaded, drop
|
||||||
into ssh, and tear it down — all from one command. banger is built
|
into ssh, and tear it down — all from one command. banger is built
|
||||||
for the dev loop, not the server use case: guests are short-lived,
|
for the dev loop, not the server use case: guests are short-lived,
|
||||||
|
|
|
||||||
BIN
assets/banger.gif
Normal file
BIN
assets/banger.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.3 MiB |
112
assets/demo.tape
Normal file
112
assets/demo.tape
Normal file
|
|
@ -0,0 +1,112 @@
|
||||||
|
# banger hero demo — VHS tape
|
||||||
|
# Render with: vhs assets/demo.tape
|
||||||
|
|
||||||
|
Output assets/banger.gif
|
||||||
|
|
||||||
|
Require banger
|
||||||
|
Require ssh
|
||||||
|
Require curl
|
||||||
|
|
||||||
|
Set Shell "bash"
|
||||||
|
Set FontSize 14
|
||||||
|
Set LineHeight 1.4
|
||||||
|
Set Width 1200
|
||||||
|
Set Height 720
|
||||||
|
Set Padding 20
|
||||||
|
Set Theme "Catppuccin Frappe"
|
||||||
|
Set TypingSpeed 66ms
|
||||||
|
|
||||||
|
# Off-camera reset: enable bash syntax highlighting via ble.sh, prompt
|
||||||
|
# styling, drop any prior demo VM, and clear the screen.
|
||||||
|
Hide
|
||||||
|
Type "source ~/.local/share/blesh/ble.sh --noattach"
|
||||||
|
Enter
|
||||||
|
Sleep 200ms
|
||||||
|
Type "bleopt complete_auto_complete= complete_auto_history="
|
||||||
|
Enter
|
||||||
|
Sleep 100ms
|
||||||
|
Type `export PS1="\n$PS1"`
|
||||||
|
Enter
|
||||||
|
Sleep 200ms
|
||||||
|
Type "[[ ${BLE_VERSION-} ]] && ble-attach"
|
||||||
|
Enter
|
||||||
|
Sleep 400ms
|
||||||
|
Type "ble-face -s syntax_error fg=red"
|
||||||
|
Enter
|
||||||
|
Sleep 100ms
|
||||||
|
Type "banger vm kill demo 2>/dev/null; banger vm delete demo 2>/dev/null; clear"
|
||||||
|
Enter
|
||||||
|
Sleep 500ms
|
||||||
|
Show
|
||||||
|
|
||||||
|
Type "banger vm run --nat --name demo"
|
||||||
|
Enter
|
||||||
|
Wait+Line /demo:~#/
|
||||||
|
Sleep 1.4s
|
||||||
|
|
||||||
|
Type "uname -a"
|
||||||
|
Enter
|
||||||
|
Sleep 1.4s
|
||||||
|
|
||||||
|
Type "exit"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 700ms
|
||||||
|
|
||||||
|
Type "banger vm list"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 1.8s
|
||||||
|
|
||||||
|
Type "ssh demo.vm"
|
||||||
|
Enter
|
||||||
|
Wait+Line /demo:~#/
|
||||||
|
Sleep 500ms
|
||||||
|
|
||||||
|
Type "touch foo bar baz"
|
||||||
|
Enter
|
||||||
|
Sleep 700ms
|
||||||
|
|
||||||
|
Type "ls"
|
||||||
|
Enter
|
||||||
|
Sleep 1.4s
|
||||||
|
|
||||||
|
Type "exit"
|
||||||
|
Enter
|
||||||
|
Sleep 700ms
|
||||||
|
|
||||||
|
Type "banger vm stop demo"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 1s
|
||||||
|
|
||||||
|
Type "banger vm start demo"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 1s
|
||||||
|
|
||||||
|
Type "banger vm exec demo -- ls"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 1.4s
|
||||||
|
|
||||||
|
Type "banger vm exec demo -- docker run -d -p 80:80 nginx"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 1.6s
|
||||||
|
|
||||||
|
Type "banger vm ports demo"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 2s
|
||||||
|
|
||||||
|
Type "curl http://demo.vm"
|
||||||
|
Sleep 1.2s
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 4s
|
||||||
|
|
||||||
|
Type "banger vm kill demo && banger vm delete demo"
|
||||||
|
Enter
|
||||||
|
Wait
|
||||||
|
Sleep 3s
|
||||||
Loading…
Add table
Add a link
Reference in a new issue