Numbers that matter.
Skip Rate
Cell-level diff renders only changed characters. 97% of the terminal is untouched on a typical frame.
Frame Time
Sub-millisecond imperative rendering path. No React reconciliation for scroll, animation, or live data.
Components
92 components, 19 AI widgets, 82 hooks, 15 headless behaviors. Everything you need, built in.
Rendering Pipeline
From React tree to ANSI escape codes. Five stages. Sub-millisecond. Deep dive →
React Tree
Custom reconciler transforms JSX into a normalized element tree.
Layout Engine
Pure-TS flexbox + CSS grid. Computes position and size for every node.
Cell Buffer
Typed arrays: char, fg, bg, attrs per cell. Double-buffered.
Diff Engine
97% of cells skipped. Only mutations written.
Terminal
Batched ANSI escapes. Single write call per frame.
React Tree
Custom reconciler transforms JSX into a normalized element tree.
Layout Engine
Pure-TS flexbox + CSS grid. Computes position and size for every node.
Cell Buffer
Typed arrays: char, fg, bg, attrs per cell. Double-buffered.
Diff Engine
97% of cells skipped. Only mutations written.
Terminal
Batched ANSI escapes. Single write call per frame.