opentui

Build terminal user interfaces with OpenTUI Core, React, and Solid packages.

1|1|Updated May 11, 2026
One-click install
npx skills add https://github.com/taxmaxi/taxmaxi --skill opentui-taxmaxi
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: opentui
Source: https://github.com/taxmaxi/taxmaxi/tree/main/.agents/skills/opentui
Command: npx skills add https://github.com/taxmaxi/taxmaxi --skill opentui-taxmaxi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Building terminal user interfaces requires coordinating a native renderer, layout engine, keyboard input, and framework bindings, and finding the correct OpenTUI API or documentation page for each task is time-consuming without guidance. ## Core Features & Use Cases - Framework Selection Guidance: Routes you to the right package for the job, whether imperative @opentui/core, React hooks via @opentui/react, or Solid signals via @opentui/solid. - Intent-Based Documentation Routing: Maps intents like keyboard input, layout, animation, testing, SSH serving, QR codes, and Three.js rendering to the canonical docs page. - Public API Lookup: Points to the API and symbol index and package entry points so you use supported imports instead of deep source paths. - Use Case: You want to add keyboard shortcuts and an animated panel to a terminal app. The skill routes you to the keymap overview and animation docs, then to the React or Solid binding pages for hooks like useTimeline. ## Quick Start Ask the assistant to build a terminal UI with OpenTUI, for example to create a React-based TUI with keyboard navigation and an animated box.

Frequently Asked Questions about opentui

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a terminal UI with OpenTUI?▼

Start with the quickstart using @opentui/core and createCliRenderer() to learn the renderer, component tree, input, and layout model. Then choose @opentui/react or @opentui/solid if you prefer components, JSX, and hooks or signals.

Should I use OpenTUI Core, React, or Solid bindings?▼

Use @opentui/core for imperative renderables and events with createCliRenderer(). Use @opentui/react for React components and hooks with createRoot(), or @opentui/solid for signals with render(). Do not install every package by default.

Does OpenTUI support Node.js or only Bun?▼

Core, React, and Solid entry points work in both Bun and supported Node.js releases. Some features are Bun-only, such as @opentui/three and runtime plugin loading, while @opentui/ssh requires Bun 1.3.0 or Node.js 26.4.0 or later.

How do I animate elements in an OpenTUI app?▼

Use createTimeline() from @opentui/core after attaching the global engine to your renderer, then add numeric property animations with easing names like outQuad. React and Solid apps can use the useTimeline hook instead.

Can I serve an OpenTUI app over SSH?▼

Yes, @opentui/ssh maps each accepted SSH shell to a CliRenderer whose dimensions track the client terminal. It requires Bun 1.3.0 or Node.js 26.4.0 or later, and open authentication should only be used for loopback development.

What are the limitations of OpenTUI timeline animations?▼

Timeline supports only top-level numeric property interpolation with named easing functions. It does not interpolate colors, strings, or nested paths, and has no spring physics, seek, unsync, or per-item pause capabilities.