This replaces old VT (virtual terminal) used for generating asciicast snapshots (thumbnails) with a new, Rust one.
Previous one was based on vt which was compiled to JS (with ClojureScript compiler) and ran with Node.js.
The new one is based on vt-rs (re-implementation of prev one in Rust), which is roughly 50x faster, and is implemented as Erlang NIF extension (FFI / native interface). A nice side effect is that we don't need Node.js in the production build anymore, which shaves off ~50 MB from the Docker image :)
This replaces old VT (virtual terminal) used for generating asciicast snapshots (thumbnails) with a new, Rust one.
Previous one was based on vt which was compiled to JS (with ClojureScript compiler) and ran with Node.js.
The new one is based on vt-rs (re-implementation of prev one in Rust), which is roughly 50x faster, and is implemented as Erlang NIF extension (FFI / native interface). A nice side effect is that we don't need Node.js in the production build anymore, which shaves off ~50 MB from the Docker image :)