Releases: adxdits/zigtui
Releases · adxdits/zigtui
v0.1.0 - Initial Release
v0.1.0 - Initial Release
The first full-featured cross-platform TUI framework for Zig — works seamlessly on Windows and Linux.
Features
- Cross-platform - Native support for Windows Console API and ANSI terminals (Linux/macOS)
- Efficient rendering - Cell-based buffer with diff algorithm for minimal screen updates
- Constraint-based layouts - Flexible layout system for responsive terminal UIs
- Composable widgets - Block, Paragraph, List, Gauge, Table, and Sparkline
- Event handling - Keyboard, mouse, and terminal resize events
- Rich styling - ANSI colors (16, 256, RGB) and text modifiers (bold, italic, underline, etc.)
- Zero hidden allocations - Explicit memory management with allocator support
- Simple API - Automatic platform detection with
tui.backend.init(allocator)
Quick Start
const tui = @import("zigtui");
pub fn main() !void {
var gpa = std.heap.GeneralPurposeAllocator(.{}){};
defer _ = gpa.deinit();
var backend = try tui.backend.init(gpa.allocator());
defer backend.deinit();
var terminal = try tui.Terminal.init(gpa.allocator(), backend.interface());
defer terminal.deinit();
// Start building your TUI!
}Requirements
- Zig 0.15.0+
- Windows 10+ or Linux/macOS with ANSI terminal support