Why it feels fast
Send what changed. Paint it locally.
Blit does not stream a terminal as video or replay a river of ANSI
bytes. The server understands the screen, computes a binary diff for
each viewer, and sends only the cells that changed. The browser
applies that diff in WASM and renders it on the GPU.
Every browser reports its own display rate, apply time, and backlog.
That lets a workstation run at full speed while a slow phone catches
up independently. Keystrokes take the reverse path without a frame
queue, so input latency is bounded by the connection itself.
-
Parser
-
alacritty_terminal
-
Render
-
WebGPU · WebGL2 · canvas2d
-
Compression
-
LZ4 · binary diff
-
Encode
-
Vulkan · NVENC · VA-API · software
Read ARCHITECTURE.md
WebGPU / WebGL2 / canvas2d WASM diff engine Glyph atlas
Applies LZ4-compressed binary diffs; reports render metrics back for pacing.
WS · WebTransport WebRTC · Unix · SSH Blit gateway · proxy-daemon
Stateless. Restartable. PTYs survive gateway and proxy restarts.
alacritty parser FrameState diff Wayland compositor (exp.)
Owns PTYs, scrollback, parsed state, per-client frame pacing, GPU encode.