Skip to main content
TUIkit Logo

> 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.