
> Terminal UIs, the Swift way_
A declarative, SwiftUI-like framework for building Terminal User Interfaces. Pure Swift on macOS and Linux, with no ncurses or C dependencies.
Everything you need
Built from the ground up for the terminal, with APIs you already know from SwiftUI.
Declarative Syntax
Build UIs with VStack, HStack, Text, Button, and more. The same patterns you know from SwiftUI.
Theming System
Multiple built-in phosphor themes with full RGB color support. Cycle at runtime or create custom palettes.
Keyboard-Driven
Focus management, key event handlers, customizable status bar with shortcut display.
Rich Components
Panel, Card, Dialog, Alert, Menu, Button, and ForEach. Container and interactive views out of the box.
Zero Dependencies
Pure Swift. No ncurses, no C libraries. Just add the Swift package and go.
Cross-Platform
Runs on macOS and Linux. Same code, same API, same results.
Built right
Swift 6.0 + Strict Concurrency
Full Sendable compliance. No data races, no unsafe globals. Modern Swift from top to bottom.
5 Border Appearances
Line, rounded, double-line, heavy, and block style. Cycle with a single keystroke.
1039 Tests
Comprehensive test suite covering views, modifiers, rendering, state management, and more.
13 DocC Articles
Architecture guides, API references, theming, focus system, keyboard shortcuts, and palette documentation.
Ready to build?
Get started with TUIkit in minutes. Add the package, write your first view, run it.