API and symbol index

Use this page to find every published OpenTUI entry point and named export. The tables come from the generated publish maps and source barrels. They include runtime values and type-only exports.

Support classes#

Class Meaning
Supported This is a normal supported API.
Advanced This API needs direct ownership, lifecycle, rendering, or integration knowledge.
Experimental This API can change as its design develops.
Runtime-specific This API works only in the runtime shown in its row.
Deprecated Keep this API only while you move to its replacement.
Implementation-looking public export The export is publicly reachable today, but OpenTUI does not endorse it for ordinary use. It is still indexed here.

A row can have more than one class. Read Runtime and platform support for the supported Bun and Node.js versions.

Entry point index#

The runtime column describes the published target. A Node stub throws during import for each Bun-only support entry point.

Package entry point Runtime Class Canonical documentation
@opentui/core Bun and Node.js Supported Renderer
@opentui/core/testing Bun and Node.js Supported Testing
@opentui/core/runtime-plugin Bun only Runtime-specific, Advanced Runtime module loading
@opentui/core/runtime-plugin-support Bun only Runtime-specific, Advanced Runtime module loading
@opentui/core/runtime-plugin-support/configure Bun only Runtime-specific, Advanced Runtime module loading
@opentui/core/yoga Bun and Node.js Advanced Yoga API
@opentui/core/tree-sitter/update-assets Build time, with Bun CLI Runtime-specific Tree-sitter
@opentui/core/parser.worker Bun and Node.js worker Implementation-looking public export Tree-sitter
@opentui/core/node-assets Node.js build time Runtime-specific Standalone executables
@opentui/react Bun and Node.js Supported React bindings
@opentui/react/renderer Bun and Node.js Supported, Implementation-looking public export React bindings
@opentui/react/test-utils Bun and Node.js Supported Testing
@opentui/react/runtime-plugin-support Bun only Runtime-specific, Advanced Runtime module loading
@opentui/react/runtime-plugin-support/configure Bun only Runtime-specific, Advanced Runtime module loading
@opentui/react/jsx-runtime Compiler selected Supported React bindings
@opentui/react/jsx-dev-runtime Compiler selected Supported React bindings
@opentui/solid Bun and Node.js Supported Solid bindings
@opentui/solid/preload Bun only Runtime-specific Solid bindings
@opentui/solid/bun-plugin Bun only Runtime-specific, Advanced Solid bindings
@opentui/solid/runtime-plugin-support Bun only Runtime-specific, Advanced Runtime module loading
@opentui/solid/runtime-plugin-support/configure Bun only Runtime-specific, Advanced Runtime module loading
@opentui/solid/components Bun and Node.js Advanced Solid bindings
@opentui/solid/jsx-runtime Compiler selected Supported Solid bindings
@opentui/solid/jsx-dev-runtime Compiler selected Supported Solid bindings
@opentui/keymap JavaScript runtimes Supported Core keymap API
@opentui/keymap/extras JavaScript runtimes Supported Core keymap API
@opentui/keymap/extras/graph JavaScript runtimes Advanced Core keymap API
@opentui/keymap/addons JavaScript runtimes Supported Built-in keymap addons
@opentui/keymap/addons/opentui Bun and Node.js Supported Built-in keymap addons
@opentui/keymap/testing JavaScript test runtimes Supported Core keymap API
@opentui/keymap/html Browser DOM Runtime-specific Keymap hosts
@opentui/keymap/opentui Bun and Node.js Runtime-specific Keymap hosts
@opentui/keymap/react OpenTUI React Runtime-specific React keymap integration
@opentui/keymap/solid OpenTUI Solid Runtime-specific Solid keymap integration
@opentui/keymap/runtime-modules Bun runtime loading Runtime-specific, Advanced Runtime module loading
@opentui/qrcode Bun and Node.js Supported QR encoder
@opentui/qrcode/react OpenTUI React Runtime-specific QR code component
@opentui/qrcode/solid OpenTUI Solid Runtime-specific QR code component
@opentui/ssh Bun 1.3.0 or Node.js 26.4.0 Runtime-specific SSH
@opentui/three Bun only Runtime-specific, Advanced Three.js WebGPU
@opentui/three/runtime-modules Bun only Runtime-specific, Advanced Runtime module loading

See Package entry points for each entry point’s role and import constraints.

@opentui/core#

The root works in Bun and supported Node.js releases. A class in these tables applies to every symbol in its row.

Renderer and render tree#

Area Symbols Class Canonical documentation
Renderer CliRenderer, CliRendererConfig, CliRendererErrorEvent, CliRendererExternalOutputEvent, CliRendererFrameEvent, CliRendererHandlerErrorEvent, CliRendererStats, CliRenderEvents, ConsoleMode, createCliRenderer, ExternalOutputMode, KittyKeyboardOptions, MouseButton, MouseEvent, PixelResolution, RendererControlState, ScreenMode Supported Renderer
Scheduling and scrollback RendererSchedulerState, ScrollbackRenderContext, ScrollbackSnapshot, ScrollbackSurface, ScrollbackSurfaceCommitOptions, ScrollbackSurfaceOptions, ScrollbackWriter, SplitFooterReplayResetOptions Advanced Renderer
Shared renderer types CapturedFrame, CapturedLine, CapturedSpan, CursorStyle, CursorStyleOptions, DebugOverlayCorner, ImageRenderProtocol, MousePointerStyle, RenderContext, RendererEvents, TargetChannel, TerminalCapabilities, TerminalCapabilityState, TerminalInfo, TerminalMultiplexer, ThemeMode, Timeout, ViewportBounds, WidthMethod Supported Renderer and Terminal capabilities
Cell and highlight types ATTRIBUTE_BASE_BITS, ATTRIBUTE_BASE_MASK, getBaseAttributes, Highlight, LineInfo, LineInfoProvider, TextAttributes Advanced Text and terminal cells
Renderables BaseRenderable, BaseRenderableOptions, isRenderable, LayoutEvents, LayoutOptions, Position, Renderable, RenderableEvents, RenderableOptions, RenderCommand, RootRenderable Supported Renderables
Composition constructs ASCIIFont, Box, Code, FrameBuffer, Generic, Input, ScrollBox, Select, TabSelect, Text, vstyles Implementation-looking public export Renderables
Composition internals Construct, DelegateMap, delegate, FunctionalConstruct, h, InstantiateFn, instantiate, isVNode, maybeMakeRenderable, PendingCall, ProxiedVNode, RenderableConstructor, ValidateShape, VChild, VNode, VRenderable, VRenderableOptions, wrapWithDelegates Implementation-looking public export Renderables
Layout string parsers AlignString, BoxSizingString, DimensionString, DirectionString, DisplayString, EdgeString, FlexDirectionString, GutterString, JustifyString, LogLevelString, MeasureModeString, OverflowString, parseAlign, parseAlignItems, parseBoxSizing, parseDimension, parseDirection, parseDisplay, parseEdge, parseFlexDirection, parseGutter, parseJustify, parseLogLevel, parseMeasureMode, parseOverflow, parsePositionType, parseUnit, parseWrap, PositionTypeString, UnitString, WrapString Advanced Layout
Tree inspection visualizeRenderableTree Advanced Renderables

Input and selection#

Area Symbols Class Canonical documentation
Keyboard events KeyEvent, KeyHandler, KeyHandlerEventMap, PasteEvent Supported Keyboard input
Keyboard implementation buildKittyKeyboardFlags, InternalKeyHandler Implementation-looking public export Keyboard input
Key parser KeyEventType, nonAlphanumericKeys, ParsedKey, parseKeypress, ParseKeypressOptions, terminalNamedSingleStrokeKeys Advanced Keyboard input
Raw input parser StdinEvent, StdinParser, StdinParserOptions, StdinParserProtocolContext, StdinResponseProtocol Advanced Keyboard input
Mouse parser MouseEventType, MouseParser, RawMouseEvent, ScrollInfo Advanced Interaction, focus, and selection
Paste decoding decodePasteBytes, PasteKind, PasteMetadata, stripAnsiSequences Advanced Keyboard input
Scroll acceleration LinearScrollAccel, MacOSScrollAccel, ScrollAcceleration Advanced Interaction, focus, and selection
Selection ASCIIFontSelectionHelper, convertGlobalToLocalSelection, LocalSelectionBounds, Selection Advanced Interaction, focus, and selection
Area Symbols Class Canonical documentation
Styled text bg, bgBlack, bgBlue, bgCyan, bgGreen, bgMagenta, bgRed, bgWhite, bgYellow, black, blink, blue, bold, brightBlack, brightBlue, brightCyan, brightGreen, brightMagenta, brightRed, brightWhite, brightYellow, Color, cyan, dim, fg, green, isStyledText, italic, link, magenta, red, reverse, strikethrough, stringToStyledText, StylableInput, StyleAttrs, StyledText, t, underline, white, yellow Supported Text and terminal cells
Color values ansi256IndexToRgb, ColorInput, ColorIntent, DEFAULT_BACKGROUND_RGB, DEFAULT_FOREGROUND_RGB, hexToRgb, hsvToRgb, normalizeColorValue, NormalizedColorValue, normalizeIndexedColorIndex, parseColor, RGBA, rgbToHex, RGBTriplet Supported Colors
Attributes and links attributesWithLink, createTextAttributes, getLinkId, detectLinks Advanced Text and terminal cells
HAST conversion HASTElement, HASTNode, HASTText, hastToStyledText Advanced Text and terminal cells
Clipboard Clipboard, ClipboardClearResult, ClipboardOptions, ClipboardReadOptions, ClipboardReadResult, ClipboardRepresentation, ClipboardSelection, ClipboardService, ClipboardTarget, ClipboardWriteDestination, ClipboardWriteOptions, ClipboardWriteResult, createClipboard, createHostClipboard, createRendererClipboardAdapter, HostClipboardBackend, HostClipboardClearResult, HostClipboardOperationOptions, HostClipboardOptions, HostClipboardReadOptions, HostClipboardService, HostClipboardWriteOptions, HostClipboardWriteResult, RendererClipboardBoundary, TerminalClipboardAdapter, TerminalClipboardOperationResult Supported Clipboard

Tree-sitter and syntax styles#

Area Symbols Class Canonical documentation
Client lifecycle addDefaultParsers, destroyTreeSitterClient, getTreeSitterClient, TreeSitterClient Supported Tree-sitter
File type lookup basenameToFiletype, extensionToFiletype, extToFiletype, infoStringToFiletype, pathToFiletype Supported Tree-sitter
Styled output treeSitterToStyledText, TreeSitterToStyledTextOptions, treeSitterToTextChunks Supported Tree-sitter
Parser and result types FiletypeParserOptions, HighlightMeta, HighlightRange, HighlightResponse, InjectionMapping, SimpleHighlight, TreeSitterClientEvents, TreeSitterClientOptions Supported Tree-sitter
Worker protocol BufferState, Edit, ParsedBuffer, PerformanceStats, TreeSitterWorkerLogType, TreeSitterWorkerRequest, TreeSitterWorkerResponse Advanced Tree-sitter
Syntax styles convertThemeToStyles, MergedStyle, StyleDefinition, StyleDefinitionInput, SyntaxStyle, ThemeTokenStyle Supported Tree-sitter

Plugins, console, and process services#

Area Symbols Class Canonical documentation
Generic slots createSlotRegistry, Plugin, PluginContext, PluginErrorEvent, PluginErrorPhase, PluginErrorReport, PluginErrorSource, ResolvedSlotRenderer, SlotMode, SlotRegistry, SlotRegistryOptions, SlotRenderer Supported Plugin slots
Core slots CoreManagedSlot, CorePlugin, CoreResolvedSlotRenderer, CoreSlotContribution, CoreSlotFailurePlaceholder, CoreSlotMode, CoreSlotRegistry, CoreSlotRenderer, createCoreSlotRegistry, registerCorePlugin, resolveCoreSlot, SlotRenderable, SlotRenderableOptions Supported Core plugin slots
Console overlay capture, ConsoleAction, ConsoleKeyBinding, ConsoleOptions, ConsolePosition, TerminalConsole Supported Console overlay
Environment access clearEnvCache, env, EnvVarConfig, registerEnvVar Advanced Environment variables
Environment registry output envRegistry, generateEnvColored, generateEnvMarkdown Implementation-looking public export Environment variables
Terminal palette buildTerminalPaletteSignature, createTerminalPalette, GetPaletteOptions, NormalizedTerminalPalette, normalizeTerminalPalette, OscSubscriptionSource, TerminalColors, TerminalPalette, TerminalPaletteDetector, TerminalPaletteOptions, WriteFunction Advanced Terminal capabilities
Application paths DataPaths, DataPathsEvents, DataPathsManager, getDataPaths Advanced Application data paths
Clocks Clock, SystemClock, TimerHandle Advanced Animation and Timeline

Components and component helpers#

Component or area Symbols Class Canonical documentation
ASCII font ASCIIFontName, ASCIIFontOptions, ASCIIFontRenderable, coordinateToCharacterIndex, fonts, getCharacterPositions, measureText, renderFontToFrameBuffer Supported ASCII font
Box and borders BorderCharacters, BorderCharArrays, BorderChars, borderCharsToArray, BorderConfig, BorderSides, BorderSidesConfig, BorderStyle, BoxDrawOptions, BoxOptions, BoxRenderable, getBorderFromSides, getBorderSides, isValidBorderStyle, parseBorderStyle Supported Box
Code ChunkRenderContext, CodeOptions, CodeRenderable, HighlightContext, OnChunksCallback, OnHighlightCallback Supported Code
Diff DiffRenderable, DiffRenderableOptions Supported Diff
Embedded terminal EmbeddedTerminalDataSource, EmbeddedTerminalOptions, EmbeddedTerminalRenderable, EmbeddedTerminalScreen Supported Embedded terminal
Editable buffer renderable ContentChangeEvent, CursorChangeEvent, EditBufferOptions, EditBufferRenderable, EditBufferRenderableEvents, EditorCapture, EditorTraits, isEditBufferRenderable Advanced Editing buffers and views
Frame buffer FrameBufferOptions, FrameBufferRenderable Advanced Frame buffer
Image display ImageFit, ImageRenderable, ImageRenderableOptions, ImageRenderableSource, resolveImageRenderProtocol Supported Image
Input InputAction, InputKeyBinding, InputRenderable, InputRenderableEvents, InputRenderableOptions Supported Input
Line number gutter LineColorConfig, LineNumberOptions, LineNumberRenderable, LineSign Supported Line number gutter
Markdown BlockState, createMarkdownCodeBlockRenderer, MarkdownCodeBlockRenderer, MarkdownCodeBlockRendererMap, MarkdownOptions, MarkdownRenderable, MarkdownTableOptions, MarkdownTableStyle, RenderNodeContext Supported Markdown
Markdown parser state ParseState Implementation-looking public export Markdown
Scroll bar ArrowOptions, ArrowRenderable, ScrollBarOptions, ScrollBarRenderable, ScrollUnit Advanced Scroll bar
Scroll box ScrollBoxOptions, ScrollBoxRenderable Supported Scroll box
Select SelectAction, SelectKeyBinding, SelectOption, SelectRenderable, SelectRenderableEvents, SelectRenderableOptions Supported Select
Slider SliderOptions, SliderRenderable Supported Slider
Tab select TabSelectAction, TabSelectKeyBinding, TabSelectOption, TabSelectRenderable, TabSelectRenderableEvents, TabSelectRenderableOptions Supported Tab select
Text TextOptions, TextRenderable Supported Text
Text nodes isTextNodeRenderable, RootTextNodeRenderable, TextNodeOptions, TextNodeRenderable Advanced Text and terminal cells
Text table TextTableCellContent, TextTableColumnFitter, TextTableColumnWidthMode, TextTableContent, TextTableOptions, TextTableRenderable Supported Text table
Textarea defaultTextareaKeyBindings, KeyBinding, SubmitEvent, TextareaAction, TextareaKeyAliasMap, TextareaOptions, TextareaRenderable Supported Textarea
Text buffer renderable TextBufferOptions, TextBufferRenderable Advanced Editing buffers and views
First-draw timestamp TimeToFirstDrawOptions, TimeToFirstDrawRenderable Supported Time to first draw

Buffers, editing, animation, and effects#

Area Symbols Class Canonical documentation
Cell buffer OptimizedBuffer Advanced Buffer API
Text buffer TextBuffer, TextChunk, TextBufferView Advanced Editing buffers and views
Editing EditBuffer, EditorView, Viewport Advanced Editing buffers and views
Extmarks createExtmarksController, Extmark, ExtmarkOptions, ExtmarksController Experimental, Advanced Editing buffers and views
Timeline AnimationOptions, createTimeline, EasingFunctions, JSAnimation, Timeline, TimelineOptions Supported Animation and Timeline
Animation engine engine Implementation-looking public export Animation and Timeline
Effects CloudsEffect, CRTRollingBarEffect, DistortionEffect, FlamesEffect, RainbowTextEffect, VignetteEffect Experimental, Advanced Post-processing effects
Filters applyAsciiArt, applyBrightness, applyChromaticAberration, applyGain, applyInvert, applyNoise, applySaturation, applyScanlines, BloomEffect Experimental, Advanced Post-processing effects
Matrices ACHROMATOPSIA_MATRIX, DEUTERANOPIA_COMP_MATRIX, DEUTERANOPIA_SIM_MATRIX, GRAYSCALE_MATRIX, GREENSCALE_MATRIX, INVERT_MATRIX, PROTANOPIA_COMP_MATRIX, PROTANOPIA_SIM_MATRIX, SEPIA_MATRIX, SOLARIZATION_MATRIX, SYNTHWAVE_MATRIX, TECHNICOLOR_MATRIX, TRITANOPIA_COMP_MATRIX, TRITANOPIA_SIM_MATRIX Advanced Color matrices

Images, audio, and native span output#

Area Symbols Class Canonical documentation
NativeImage API BlendMode, CompositeOptions, ExtendOptions, ExtractOptions, ImageColorStatus, ImageError, ImageErrorCode, ImageFormat, imageInfo, ImageInfo, ImageLoadError, ImageLoadErrorCode, ImageLoadOptions, ImageSource, NativeImage, OwnedRawImage, PixelFormat, RawImage, ResizeKernel, ResizeOptions Advanced NativeImage
Audio playback and mixing Audio, AudioAction, AudioErrorContext, AudioEvents, AudioGroup, AudioInitializationAction, AudioInitializationError, AudioPlaybackDevice, AudioPlayOptions, AudioSetupOptions, AudioSound, AudioStartOptions, AudioVoice, setupAudio Supported Audio
Streaming audio AudioStream, AudioStreamAction, AudioStreamBody, AudioStreamBodyOptions, AudioStreamBufferOptions, AudioStreamConnectContext, AudioStreamConnection, AudioStreamConnector, AudioStreamContentTypeContext, AudioStreamContentTypePolicy, AudioStreamDemuxer, AudioStreamDemuxerFactory, AudioStreamDemuxOutput, AudioStreamError, AudioStreamErrorContext, AudioStreamEvents, AudioStreamFormat, AudioStreamMetadata, AudioStreamMetadataFormat, AudioStreamOptions, AudioStreamReconnectEvent, AudioStreamReconnectOptions, AudioStreamRetryContext, AudioStreamRetryDecision, AudioStreamRetryPhase, AudioStreamSourceOptions, AudioStreamState, AudioStreamStats, AudioStreamUrlOptions, createIcyStreamDemuxer, IcyStreamDemuxerOptions Supported Streaming audio
Audio capture and recording AudioCaptureDevice, AudioCaptureOptions, AudioCaptureReadResult, AudioCaptureStats, AudioCaptureStream, AudioCaptureStreamAction, AudioCaptureStreamError, AudioCaptureStreamErrorContext, AudioCaptureStreamEvents, AudioCaptureStreamOptions, AudioCaptureStreamState, AudioCaptureStreamStats, AudioRecorder, AudioRecorderAction, AudioRecorderError, AudioRecorderErrorContext, AudioRecorderEvents, AudioRecorderState, AudioRecorderStats, AudioRecordToFileOptions Supported Audio capture and recording
Native span output DataHandler, NativeSpanFeed Advanced NativeSpanFeed

Low-level native binding exports#

These names expose the TypeScript side of the native binding. Use the higher-level API unless a low-level guide requires one of them.

Area Symbols Class Canonical documentation
Native handles and binding types AudioEngineHandle, AudioEngineLib, ClipboardOperationHandle, ClipboardServiceHandle, CursorState, EditBufferHandle, EditorViewHandle, EventSinkHandle, ImageHandle, LogicalCursor, LogLevel, MeasureResult, NativeAudioStreamCloseReason, NativeAudioStreamFormat, NativeAudioStreamState, NativeBufferedOutput, NativeClipboardCancelStatus, NativeClipboardCopyStatus, NativeClipboardDestroyStatus, NativeClipboardOperationStatus, NativeClipboardShutdownStatus, NativeClipboardStartStatus, NativeHandle, NativeMeasureTargetHandle, NativeMeasureTargetKind, NativeRenderableHandle, NativeRendererCreateOptions, NativeRenderOperationResult, NativeSpanFeedEventHandler, NativeYogaDirtiedCallback, NativeYogaLayout, NativeYogaMeasureCallback, OptimizedBufferHandle, RendererHandle, RenderLib, resolveRenderLib, setRenderLibPath, SyntaxStyleHandle, TextBufferHandle, TextBufferViewHandle, VisualCursor Implementation-looking public export This section
Native result structures AllocatorStats, AudioStreamCreateOptions, BuildOptions, GrowthPolicy, NativeAudioCaptureStats, NativeAudioStreamStats, NativeRenderStats, NativeSpanFeedOptions, NativeSpanFeedStats Advanced This section
Bundled asset resolution resolveBundledFilePath Implementation-looking public export Standalone executables
Yoga namespace Yoga Advanced Yoga API

Other @opentui/core entry points#

Testing#

@opentui/core/testing works in Bun and Node.js.

Area Symbols Class Canonical documentation
Renderer setup createTestRenderer, MockInput, MockMouse, TestExternalOutput, TestExternalOutputCommit, TestFlushOptions, TestRenderer, TestRendererOptions, TestRendererSetup, TestVisualIdleOptions, TestWaitForOptions Supported Testing
Keyboard and mouse createMockKeys, createMockMouse, KeyCodes, KeyInput, MockKeysOptions, MouseButton, MouseButtons, MouseEventOptions, MouseEventType, MouseModifiers, MousePosition, pasteBytes Supported Testing
Capabilities createTerminalCapabilities, setRendererCapabilities, TerminalCapabilitiesOverrides Supported Testing
Deterministic helpers createSpy, ManualClock, MockTreeSitterClient Supported Testing
Recording RecordedFrame, TestRecorder Supported Testing

Runtime plugin support#

These entry points are Bun-only. Their Node.js targets are stubs that throw during import.

Package entry point Symbols Class Canonical documentation
@opentui/core/runtime-plugin createRuntimePlugin, CreateRuntimePluginOptions, isCoreRuntimeModuleSpecifier, RuntimeModuleEntry, RuntimeModuleExports, runtimeModuleIdForSpecifier, RuntimeModuleLoader, RuntimePluginRewriteOptions Runtime-specific, Advanced Runtime module loading
@opentui/core/runtime-plugin-support createRuntimePlugin, CreateRuntimePluginOptions, ensureRuntimePluginSupport, RuntimeModuleEntry, RuntimeModuleExports, runtimeModuleIdForSpecifier, RuntimeModuleLoader Runtime-specific, Advanced Runtime module loading
@opentui/core/runtime-plugin-support/configure createRuntimePlugin, CreateRuntimePluginOptions, ensureRuntimePluginSupport, RuntimeModuleEntry, RuntimeModuleExports, runtimeModuleIdForSpecifier, RuntimeModuleLoader Runtime-specific, Advanced Runtime module loading

Yoga#

@opentui/core/yoga works in Bun and Node.js. The root Yoga namespace exposes this module. See Yoga API for methods and ownership.

Purpose Symbols Class
Objects and callback types Config, Node, default, DirtiedFunction, Layout, MeasureFunction, Size, Value Advanced
Alignment Align, ALIGN_AUTO, ALIGN_BASELINE, ALIGN_CENTER, ALIGN_FLEX_END, ALIGN_FLEX_START, ALIGN_SPACE_AROUND, ALIGN_SPACE_BETWEEN, ALIGN_SPACE_EVENLY, ALIGN_STRETCH Advanced
Box sizing BoxSizing, BOX_SIZING_BORDER_BOX, BOX_SIZING_CONTENT_BOX Advanced
Dimensions Dimension, DIMENSION_HEIGHT, DIMENSION_WIDTH Advanced
Direction Direction, DIRECTION_INHERIT, DIRECTION_LTR, DIRECTION_RTL Advanced
Display Display, DISPLAY_CONTENTS, DISPLAY_FLEX, DISPLAY_NONE Advanced
Edges Edge, EDGE_ALL, EDGE_BOTTOM, EDGE_END, EDGE_HORIZONTAL, EDGE_LEFT, EDGE_RIGHT, EDGE_START, EDGE_TOP, EDGE_VERTICAL Advanced
Compatibility errata Errata, ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE, ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING, ERRATA_ALL, ERRATA_CLASSIC, ERRATA_NONE, ERRATA_STRETCH_FLEX_BASIS Advanced
Experimental feature ExperimentalFeature, EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS Experimental, Advanced
Flex direction FlexDirection, FLEX_DIRECTION_COLUMN, FLEX_DIRECTION_COLUMN_REVERSE, FLEX_DIRECTION_ROW, FLEX_DIRECTION_ROW_REVERSE Advanced
Gaps Gutter, GUTTER_ALL, GUTTER_COLUMN, GUTTER_ROW Advanced
Justification Justify, JUSTIFY_CENTER, JUSTIFY_FLEX_END, JUSTIFY_FLEX_START, JUSTIFY_SPACE_AROUND, JUSTIFY_SPACE_BETWEEN, JUSTIFY_SPACE_EVENLY Advanced
Logging LogLevel, LOG_LEVEL_DEBUG, LOG_LEVEL_ERROR, LOG_LEVEL_FATAL, LOG_LEVEL_INFO, LOG_LEVEL_VERBOSE, LOG_LEVEL_WARN Advanced
Measurement MeasureMode, MEASURE_MODE_AT_MOST, MEASURE_MODE_EXACTLY, MEASURE_MODE_UNDEFINED Advanced
Node type NodeType, NODE_TYPE_DEFAULT, NODE_TYPE_TEXT Advanced
Overflow Overflow, OVERFLOW_HIDDEN, OVERFLOW_SCROLL, OVERFLOW_VISIBLE Advanced
Position PositionType, POSITION_TYPE_ABSOLUTE, POSITION_TYPE_RELATIVE, POSITION_TYPE_STATIC Advanced
Units Unit, UNIT_AUTO, UNIT_PERCENT, UNIT_POINT, UNIT_UNDEFINED Advanced
Wrapping Wrap, WRAP_NO_WRAP, WRAP_WRAP, WRAP_WRAP_REVERSE Advanced

Tree-sitter assets, worker, and Node assets#

Package entry point Runtime Symbols Class Canonical documentation
@opentui/core/tree-sitter/update-assets Build time, with Bun CLI runUpdateAssetsCli, updateAssets, UpdateOptions Runtime-specific Tree-sitter
@opentui/core/parser.worker Bun and Node.js worker No named application exports Implementation-looking public export Tree-sitter
@opentui/core/node-assets Node.js build time getNodeAssets, NodeAsset, NodeAssetTarget Runtime-specific Standalone executables

@opentui/react#

The root and compiler-selected JSX entry points work in Bun and Node.js.

Root exports#

Area Symbols Class Canonical documentation
Root rendering createElement, createPortal, createRoot, flushSync, Root Supported React bindings
Application context AppContext, useAppContext Supported React bindings
Hooks useBlur, useFocus, useKeyboard, UseKeyboardOptions, useOnResize, usePaste, useRenderer, useSelectionHandler, useTerminalDimensions, useTimeline Supported React bindings
Catalogue extension extend, ExtendedComponentProps, ExtendedIntrinsicElements, getComponentCatalogue, OpenTUIComponents, RenderableConstructor Advanced React bindings
Catalogue objects baseComponents, componentCatalogue Implementation-looking public export React bindings
Component prop types AsciiFontProps, BoxProps, CodeProps, DiffProps, GetNonStyledProperties, ImageProps, InputProps, LineBreakProps, LineNumberProps, LinkProps, MarkdownProps, NonStyledProps, ReactProps, ScrollBoxProps, SelectProps, SpanProps, TabSelectProps, TextareaProps, TextProps Supported Components overview
Plugin slots createReactSlotRegistry, createSlot, ReactBoundSlotProps, ReactPlugin, ReactRegistrySlotComponent, ReactSlotComponent, ReactSlotOptions, ReactSlotProps, Slot, SlotMode Supported React plugin slots
First-draw timestamp TimeToFirstDraw, TimeToFirstDrawProps Supported Time to first draw

Other React entry points#

Package entry point Symbols Class Canonical documentation
@opentui/react/renderer declarations createPortal, createRoot, flushSync, Root Supported React bindings
@opentui/react/renderer runtime All runtime values from @opentui/react Implementation-looking public export React bindings
@opentui/react/test-utils testRender Supported Testing
@opentui/react/runtime-plugin-support ensureRuntimePluginSupport, ReactRuntimePluginSupportOptions Runtime-specific, Advanced Runtime module loading
@opentui/react/runtime-plugin-support/configure ensureRuntimePluginSupport, ReactRuntimePluginSupportOptions Runtime-specific, Advanced Runtime module loading
@opentui/react/jsx-runtime Fragment, jsx, jsxs, JSX Supported React bindings
@opentui/react/jsx-dev-runtime Fragment, jsxDEV, JSX Supported React bindings

The generated React map points /renderer runtime imports to index.js. Its declaration path points to reconciler/renderer.d.ts. Treat root values outside the four declared names as a build leak.

@opentui/solid#

The root, /components, and compiler-selected JSX entry points work in Bun and Node.js.

Root exports#

Area Symbols Class Canonical documentation
Root rendering render, testRender Supported Solid bindings
Hooks onBlur, onFocus, onResize, useKeyboard, UseKeyboardOptions, usePaste, useRenderer, useSelectionHandler, useTerminalDimensions, useTimeline Supported Solid bindings
Renamed hook useKeyHandler Deprecated Use useKeyboard in Solid bindings.
Components createDynamic, Dynamic, DynamicProps, Portal Supported Solid bindings
Scrollback createScrollbackWriter, SolidScrollbackNode, SolidScrollbackWriterOptions, writeSolidToScrollback Advanced Renderer
Catalogue extension extend, ExtendedComponentProps, ExtendedIntrinsicElements, getComponentCatalogue, OpenTUIComponents, RenderableConstructor Advanced Solid bindings
Catalogue and text wrappers baseComponents, BoldSpanRenderable, componentCatalogue, ItalicSpanRenderable, LineBreakRenderable, LinkOptions, LinkRenderable, TextNodeKey, textNodeKeys, UnderlineSpanRenderable Implementation-looking public export Solid bindings
Reconciler _render, createComponent, createElement, createSlotNode, createTextNode, DomNode, effect, insert, insertNode, memo, mergeProps, setProp, spread, use Implementation-looking public export Solid bindings
Reconciler context and wrappers LayoutSlotRenderable, RendererContext, SlotRenderable, TextSlotRenderable Implementation-looking public export Solid bindings
Component prop types AsciiFontProps, BoxProps, CodeProps, ElementProps, GetNonStyledProperties, ImageProps, InputProps, LinkProps, MarkdownProps, NonStyledProps, ScrollBoxProps, SelectProps, SpanProps, TabSelectProps, TextareaProps, TextProps Supported Components overview
Plugin slots createSlot, createSolidSlotRegistry, Slot, SlotMode, SolidBoundSlotProps, SolidPlugin, SolidRegistrySlotComponent, SolidSlotComponent, SolidSlotOptions, SolidSlotProps Supported Solid plugin slots
JSX namespace JSX Supported Solid bindings
First-draw timestamp TimeToFirstDraw, TimeToFirstDrawProps Supported Time to first draw

Other Solid entry points#

Package entry point Symbols Class Canonical documentation
@opentui/solid/preload No named exports. Importing it installs the Bun source transform. Runtime-specific Solid bindings
@opentui/solid/bun-plugin createSolidTransformPlugin, CreateSolidTransformPluginOptions, default, ensureSolidTransformPlugin, resetSolidTransformPluginState Runtime-specific, Advanced Solid bindings
@opentui/solid/runtime-plugin-support ensureRuntimePluginSupport, SolidRuntimePluginSupportOptions Runtime-specific, Advanced Runtime module loading
@opentui/solid/runtime-plugin-support/configure ensureRuntimePluginSupport, SolidRuntimePluginSupportOptions Runtime-specific, Advanced Runtime module loading
@opentui/solid/components extend, ExtendedComponentProps, ExtendedIntrinsicElements, getComponentCatalogue, OpenTUIComponents Advanced Solid bindings
@opentui/solid/jsx-runtime Fragment, jsx, jsxDEV, jsxs, JSX Supported Solid bindings
@opentui/solid/jsx-dev-runtime Fragment, jsxDEV, JSX Supported Solid bindings

@opentui/keymap#

Root engine#

The root engine is host-agnostic. Use an adapter entry point to connect it to a browser or OpenTUI renderer.

Kind Symbols Class Canonical documentation
Values Keymap, KEYMAP_EXTENSION_CONTEXT, stringifyKeySequence, stringifyKeyStroke Supported Core keymap API
Types ActiveBinding, ActiveKey, ActiveKeyOptions, Attributes, Binding, BindingCommand, BindingEvent, BindingExpander, BindingExpanderContext, BindingExpansion, BindingFieldCompiler, BindingFieldContext, BindingParser, BindingParserContext, BindingParserResult, Bindings, BindingsValidationResult, BindingTransformer, BindingTransformerContext, Command, CommandBindingsQuery, CommandContext, CommandEntry, CommandFieldCompiler, CommandFieldContext, CommandFilter, CommandHandler, CommandQuery, CommandQueryValue, CommandResolver, CommandResolverContext, CommandResult, CommandTransformer, CommandTransformerContext, DispatchBinding, DispatchEvent, DispatchLayer, DispatchPhase, ErrorEvent, EventData, EventMatchResolver, EventMatchResolverContext, EventName, Events, HostCapability, HostMetadata, HostModifier, HostPlatform, InterceptName, Intercepts, KeyAfterInputContext, KeyAfterReason, KeyDeferredDisambiguationContext, KeyDeferredDisambiguationDecision, KeyDeferredDisambiguationHandler, KeyDisambiguationContext, KeyDisambiguationDecision, KeyDisambiguationResolver, KeyInputContext, KeyInterceptOptions, KeyLike, KeymapEvent, KeymapExtensionContext, KeymapExtensionProvider, KeymapHost, KeyMatch, KeySequencePart, KeyStringifyInput, KeyStrokeInput, KeyToken, Layer, LayerAnalysisContext, LayerAnalyzer, LayerBindingAnalysis, LayerBindingsTransformer, LayerBindingsTransformerContext, LayerFieldCompiler, LayerFieldContext, Listener, NormalizedKeyStroke, ParsedBinding, ParsedCommand, RawInputContext, RawInterceptOptions, ReactiveMatcher, ResolvedKeyToken, ResolvedSequencePattern, RunCommandOptions, RunCommandResult, SequencePattern, SequencePatternMatch, StringifyOptions, TargetMode, WarningEvent Supported Core keymap API

Extras and graph#

Package entry point Symbols Class Canonical documentation
@opentui/keymap/extras BindingCommandMap, BindingConfig, BindingConfigItem, BindingDefaults, BindingDefaultsContext, BindingLookup, BindingValue, CommandBindingMap, commandBindings, CommandBindingsError, CommandBindingsOptions, CommandBindingsOverrideWarning, createBindingLookup, CreateBindingLookupOptions, formatCommandBindings, FormatCommandBindingsOptions, formatKeySequence, FormatKeySequenceOptions, KeyModifierName, KeySequenceFormatPart, SequenceBindingLike, TokenDisplayResolver Supported Core keymap API
@opentui/keymap/extras/graph createGraphExtra, getGraphSnapshot, GraphBinding, GraphCommand, GraphInactiveReason, GraphLayer, GraphSequenceNode, GraphSnapshot, GraphSnapshotOptions, KeymapGraphExtra Advanced Core keymap API

Addons#

Package entry point Symbols Class Canonical documentation
@opentui/keymap/addons Aliases, BackspacePopsPendingSequenceOptions, defaultBindingParser, defaultEventMatchResolver, Enabled, EscapeClearsPendingSequenceOptions, ExCommand, ExCommandPayload, LeaderOptions, LeaderTrigger, NeovimDisambiguationOptions, registerAliasesField, registerBackspacePopsPendingSequence, registerBindingOverrides, registerCommaBindings, registerDeadBindingWarnings, registerDefaultBindingParser, registerDefaultEventMatchResolver, registerDefaultKeys, registerEmacsBindings, registerEnabledFields, registerEscapeClearsPendingSequence, registerExCommands, registerLeader, registerMetadataFields, registerModBindings, registerNeovimDisambiguation, registerTimedLeader, registerUnresolvedCommandWarnings, TimedLeaderOptions Supported Built-in keymap addons
@opentui/keymap/addons/opentui Every export from @opentui/keymap/addons, plus createTextareaBindings, EditBufferCommandName, EditBufferCommandOptions, EditBufferFineGroup, registerBaseLayoutFallback, registerEditBufferCommands, registerManagedTextareaLayer, registerTextareaMappingSuspension Supported Built-in keymap addons and Custom keymap addons

Testing and hosts#

Package entry point Runtime Symbols Class Canonical documentation
@opentui/keymap/testing JavaScript test runtimes captureKeymapDiagnostics, createTestHostMetadata, createTestKeymap, createTestKeymapHost, CreateTestKeymapHostOptions, CreateTestKeymapOptions, DEFAULT_TEST_HOST_METADATA, TestDiagnosticCapture, TestHostMetadataOptions, TestKeymapEvent, TestKeymapHarness, TestKeymapHost, TestKeymapTarget, TestKeyModifierOptions Supported Core keymap API
@opentui/keymap/html Browser DOM createDefaultHtmlKeymap, createHtmlKeymap, createHtmlKeymapEvent, createHtmlKeymapHost, htmlEventMatchResolver, HtmlKeymapEvent, normalizeHtmlKeyName Runtime-specific Keymap hosts
@opentui/keymap/opentui Bun and Node.js createDefaultOpenTuiKeymap, createOpenTuiKeymap, createOpenTuiKeymapHost Runtime-specific Keymap hosts

Frameworks and runtime modules#

Package entry point Symbols Class Canonical documentation
@opentui/keymap/react KeymapProvider, KeymapProviderProps, reactiveMatcherFromStore, useActiveKeys, useBindings, UseBindingsLayer, UseBindingsTargetRef, useKeymap, usePendingSequence Runtime-specific React keymap integration
@opentui/keymap/solid KeymapProvider, KeymapProviderProps, reactiveMatcherFromSignal, useBindings, UseBindingsLayer, UseBindingsTarget, useKeymap, useKeymapSelector Runtime-specific Solid keymap integration
@opentui/keymap/runtime-modules runtimeModules Runtime-specific, Advanced Runtime module loading

The runtimeModules map contains the root, both extras paths, both addon paths, and both host adapters. It loads the React and Solid paths lazily. It does not contain /testing or /runtime-modules.

@opentui/qrcode#

The package root works in Bun and Node.js. Each framework path re-exports the full root and adds its registration function.

Package entry point Symbols Class Canonical documentation
@opentui/qrcode ByteEncoding, createQrSvg, EciAssignment, EncodeOptions, encodeTextBytes, ErrorCorrectionLevel, Fnc1SecondPositionInfo, Gs1Element, QRCode, QRCodeFitMode, QRCodeOptions, QRCodeRenderable, QrSegment, StructuredAppendInfo, TerminalRenderOptions Supported QR encoder and QR code component
@opentui/qrcode/react Every root export, plus registerQRCode Runtime-specific QR code component
@opentui/qrcode/solid Every root export, plus registerQRCode Runtime-specific QR code component

@opentui/ssh#

The package supports Bun 1.3.0 and Node.js 26.4.0. It has one public entry point.

Symbols Class Canonical documentation
AuthConfig, AuthMethods, ConfigError, createServer, DenyError, Handoff, Identity, IdentityFor, ListenInfo, LogEvent, logging, LoggingOptions, Middleware, MiddlewareFunction, MiddlewareSession, Next, PublicKey, PublicKeyPolicy, RemoteAddress, Server, ServerBuilder, ServerConfig, Session, SessionHandler, SshError Runtime-specific SSH

@opentui/three#

Both entry points are Bun-only.

Package entry point Symbols Class Canonical documentation
@opentui/three AnimationDefinition, AnimationStateConfig, CLICanvas, DEFAULT_EXPLOSION_PARAMETERS, DEFAULT_PHYSICS_EXPLOSION_PARAMETERS, ExplodingSpriteEffect, ExplosionCreationData, ExplosionEffectParameters, ExplosionHandle, ExplosionManager, InstanceManager, InstanceManagerOptions, MeshPool, MeshPoolOptions, ParticleEffectParameters, PhysicsExplodingSpriteEffect, PhysicsExplosionCreationData, PhysicsExplosionEffectParameters, PhysicsExplosionHandle, PhysicsExplosionManager, PhysicsSpriteRecreationData, PlanckPhysicsWorld, PlanckRigidBody, RapierPhysicsWorld, RapierRigidBody, ResolvedAnimationState, ResourceConfig, SheetProperties, SheetSprite, SpriteAnimator, SpriteDefinition, SpriteParticleGenerator, SpriteRecreationData, SpriteResource, SpriteResourceManager, SpriteUtils, SuperSampleAlgorithm, SuperSampleType, TextureUtils, THREE, ThreeCliRenderer, ThreeCliRendererOptions, ThreeRenderable, ThreeRenderableOptions, TiledSprite Runtime-specific, Advanced Three.js WebGPU
@opentui/three/runtime-modules runtimeModules Runtime-specific, Advanced Runtime module loading

The THREE namespace exposes the installed Three.js module. The runtimeModules map contains only the @opentui/three root.

Native distribution packages#

The build generates eight platform packages:

  • @opentui/core-darwin-x64
  • @opentui/core-darwin-arm64
  • @opentui/core-linux-x64
  • @opentui/core-linux-arm64
  • @opentui/core-linux-x64-musl
  • @opentui/core-linux-arm64-musl
  • @opentui/core-win32-x64
  • @opentui/core-win32-arm64

Each package has one default export that resolves the native library path. These packages are internal distribution surfaces, not application APIs. Let @opentui/core select the correct package. See Runtime and platform support.

Source-defined native ABI#

The npm API and the source-defined native application binary interface (ABI) are separate surfaces. lib.zig defines 335 exported functions. The Yoga module defines 50 more, and NativeSpanFeed defines 11 more.

OpenTUI’s TypeScript packages call these functions through an internal ABI. The project does not publish a first-party C header or a supported standalone C contract. Do not treat the 396 source names as supported npm symbols or as an API for other language bindings.

The native binding can change with its TypeScript callers. Use the TypeScript exports indexed above for application code.