Module: TuiTui

Defined in:
lib/tui_tui.rb,
lib/tui_tui/ansi.rb,
lib/tui_tui/cell.rb,
lib/tui_tui/help.rb,
lib/tui_tui/line.rb,
lib/tui_tui/list.rb,
lib/tui_tui/rect.rb,
lib/tui_tui/size.rb,
lib/tui_tui/span.rb,
lib/tui_tui/event.rb,
lib/tui_tui/fuzzy.rb,
lib/tui_tui/modal.rb,
lib/tui_tui/pager.rb,
lib/tui_tui/style.rb,
lib/tui_tui/theme.rb,
lib/tui_tui/toast.rb,
lib/tui_tui/width.rb,
lib/tui_tui/canvas.rb,
lib/tui_tui/prompt.rb,
lib/tui_tui/screen.rb,
lib/tui_tui/select.rb,
lib/tui_tui/confirm.rb,
lib/tui_tui/palette.rb,
lib/tui_tui/runtime.rb,
lib/tui_tui/version.rb,
lib/tui_tui/key_code.rb,
lib/tui_tui/scrollbar.rb,
lib/tui_tui/text_view.rb,
lib/tui_tui/focus_ring.rb,
lib/tui_tui/key_intent.rb,
lib/tui_tui/key_reader.rb,
lib/tui_tui/status_bar.rb,
lib/tui_tui/color_depth.rb,
lib/tui_tui/scroll_list.rb,
lib/tui_tui/display_text.rb,
lib/tui_tui/event_stream.rb,
lib/tui_tui/terminal_size.rb,
lib/tui_tui/text_sanitizer.rb,
lib/tui_tui/terminal_session.rb,
lib/tui_tui/canvas_compositor.rb

Overview

A tiny, owned TUI runtime for rendering in modern graphical terminals. Its only dependency is ‘io/console` (a default gem, used by the Screen driver); the pure pieces — width, color, style, layout — need nothing.

The framework is application-agnostic. Build an app object responding to ‘view(size) -> Canvas` and `update(event) -> app | :quit`, then drive it with `TuiTui::Runtime`.

Defined Under Namespace

Modules: Ansi, ColorDepth, KeyCode, Scrollbar, StatusBar, TextSanitizer, TextView, Width Classes: Canvas, CanvasCompositor, Cell, Confirm, DisplayText, EofEvent, EventStream, FocusRing, Fuzzy, Help, KeyEvent, KeyIntent, KeyReader, Line, List, Modal, MouseEvent, Pager, Palette, Prompt, Rect, ResizeEvent, Runtime, Screen, ScrollList, Select, Size, Span, Style, TerminalSession, TerminalSize, Theme, TickEvent, Toast

Constant Summary collapse

VERSION =
"0.1.0"