OpenTUI
OpenTUI is a native terminal UI core written in Zig with TypeScript bindings. The native core exposes a C ABI and can be used from any language. OpenTUI powers OpenCode in production today and will also power terminal.shop. It is an extensible core with a focus on correctness, stability, and high performance. It provides a component-based architecture with flexible layout capabilities, allowing you to create complex terminal applications.
Docs: https://opentui.com/docs/getting-started
Quick start with bun and create-tui:
bun create tui
This monorepo contains the following packages:
@opentui/core- TypeScript bindings for OpenTUI's native Zig core, with an imperative API and all primitives.@opentui/solid- The SolidJS reconciler for OpenTUI.@opentui/react- The React reconciler for OpenTUI.
Install
NOTE: You must have Zig installed on your system to build the packages.
TypeScript/JavaScript
bun install @opentui/core
AI Agent Skill
Teach your AI coding assistant OpenTUI's APIs and patterns.
For OpenCode (includes /opentui command):
curl -fsSL https://raw.githubusercontent.com/msmps/opentui-skill/main/install.sh | bash
For other AI coding assistants:
npx skills add msmps/opentui-skill
Try Examples
You can quickly try out OpenTUI examples without cloning the repository:
For macOS, Linux, WSL, Git Bash:
curl -fsSL https://raw.githubusercontent.com/anomalyco/opentui/main/packages/core/src/examples/install.sh | sh
For Windows (PowerShell/CMD):
Download the latest release directly from GitHub Releases
Running Examples (from the repo root)
TypeScript Examples
bun install
cd packages/core
bun run src/examples/index.ts
Development
See the Development Guide for building, testing, debugging, and local development linking.
Documentation
- Website docs - Guides and API references
- Development Guide - Building, testing, and local dev linking
- Getting Started - API and usage guide
- Environment Variables - Configuration options
Showcase
Consider showcasing your work on the awesome-opentui list. A curated list of awesome resources and terminal user interfaces built with OpenTUI.