A Terminal User Interface (TUI) component library written in Zen C.
Zentui is a suite of UI components designed to make building console applications simpler. It includes components like text inputs, tree views, data tables, equalizers, and modals.
- Component Library: Over 30 components available.
- Layouts: Horizontal/vertical joins, absolute alignments, and flex styling.
- Interactions: Support for hover, focus, text entry, and custom keybindings.
- Audio & Visualizers: Built-in VU meters, waveforms, equalizers, and circular knobs.
- Terminal Colors: Fully supports Truecolor (
\033[38;2;R;G;Bm).
- Prerequisites: Make sure you have the Zen C (
zc) compiler installed. - Clone the Repo:
git clone https://github.com/TrisH0x2A/zentui.git cd zentui - Run the Demos:
We have compiled a series of demos to showcase Zentui.
# Make sure the script is executable chmod +x scripts/run_demo.sh # Launch the demo runner ./scripts/run_demo.sh
Read the documentation to start building your own TUIs:
- Getting Started - Setting up your first app
- Architecture - Understanding the
raw {}rendering loop - Component Categories:
- Layout & Structure (Panels, Headers, Separators)
- Form Inputs (Text, Password, Toggle, Select)
- Data Display (Lists, Tables, Tree Views, Scroll Areas)
- Indicators & Alerts (Gauges, Sliders, Badges, Modals)
- Audio / Music (Visualizers, Equalizers, Knobs)
Check out these real-world applications built with Zentui:
- ZTune - A CLI music player for YouTube featuring spectrum analyzers.
We welcome contributions. Please see our Contributing Guidelines to get started on creating new components or improving existing ones.
This project is licensed under the MIT License - see the LICENSE file for details. Author: TrisH0x2A