static/
asciinema-player.css, asciinema-player.min.js, LICENSE-asciinema-player
Vendored from https://github.com/asciinema/asciinema-player (releases page). Used for recorded cast playback. See LICENSE-asciinema-player for the license.
vt_js_bg.wasm, vt_js.js
Built from the VT parser crate inside the asciinema-player repo:
# requires nix develop in ~/kot/asciinema-player (provides rust + wasm32 target + binaryen)
cargo build \
--manifest-path ~/kot/asciinema-player/src/vt/Cargo.toml \
--target wasm32-unknown-unknown --release
cargo install wasm-bindgen-cli --version 0.2.106 --locked
wasm-bindgen \
~/kot/asciinema-player/src/vt/target/wasm32-unknown-unknown/release/vt_js.wasm \
--out-dir /tmp/vt-out --target web --no-typescript
wasm-opt -O4 /tmp/vt-out/vt_js_bg.wasm -o static/vt_js_bg.wasm
cp /tmp/vt-out/vt_js.js static/vt_js.js
vt_js.js is then patched to export getWasmMemory() (see the export at the
bottom of the file) so the live player can read span data directly from wasm
memory.
The wasm-bindgen version must match the wasm-bindgen dependency in
src/vt/Cargo.toml.
live-player.js
Hand-written canvas-based live stream player. Connects to the ALiS WebSocket,
feeds terminal data into the wasm VT parser, and renders directly to a
<canvas> element. No build step — loaded as an ES module.