GPU widget toolkit for pleme-io applications. Built on top of garasu, provides reusable UI primitives so every app shares the same interaction patterns.
| Widget | Purpose |
|---|---|
TextInput |
Single/multi-line text input with cursor, selection, clipboard |
ScrollView |
Virtualized scrollable container (handles thousands of items) |
ListView |
Scrollable item list with keyboard selection |
TabBar |
Tab container with keyboard navigation |
SplitPane |
Resizable horizontal/vertical splits |
Modal |
Overlay dialog with focus trap |
FocusManager |
Tab-order focus traversal |
KeyMap |
Configurable keybinding system |
Theme |
Color, spacing, typography theming (Nord defaults) |
[dependencies]
egaku = { git = "https://github.com/pleme-io/egaku" }use egaku::{TextInput, ListView, TabBar, Theme};
let mut input = TextInput::new();
input.insert_str("hello");
let theme = Theme::default(); // Nord palettecargo build
cargo test --lib