bettertui_engine 0.1.0

High-performance terminal UI framework
Documentation

bettertui_engine

High-performance terminal UI engine written in Rust. The native core of the BetterTUI framework: layout, rendering, text editing, input, animation, terminal emulation, PTY management, font/glyph handling, and syntax highlighting - all in a single dependency.

Install

[dependencies]
bettertui_engine = "0.1"

Usage

use bettertui_engine::render::Renderer;
use bettertui_engine::tree::{NodeArena, NodeKind, RenderNode};

let mut arena = NodeArena::new();
let root = arena.insert(RenderNode::new(NodeKind::Box));

let mut renderer = Renderer::new(80, 24);
let frame = renderer.render(&mut arena);
println!("{}", String::from_utf8_lossy(&frame.output_data));

Feature flags

Feature Default Description
diagnostics yes Render/frame/cache diagnostic counters. Disable with default-features = false for zero-overhead release builds.
napi no Node.js bindings via napi-rs. Only needed when building the bettertui_engine.node addon; not used by pure-Rust consumers.
production no Convenience alias enabling release-logs-warn.
release-logs-off / -error / -warn / -info / -debug no Compile-time log gating; statically removes tracing events below the chosen level from release builds. Pick at most one.

Modules

Key public modules: tree (arena node tree), taffy (flexbox layout), render (painter, pipeline, backends), framebuffer, dirty_diff, ansi, text (buffer, editing, search, wrap), input (keys, mouse, focus, keybindings), terminal (VT state machine, capabilities, scrollback), pty, animation, font, syntax, scheduler, theme, protocol.

License

MIT. See LICENSE.