Modules
Harlock — a pure-Elixir TUI framework for Unix terminals.
Behaviour for Harlock applications.
Side-effect descriptors returned from init/1 and update/2.
A node in the view tree returned by an app's view/1. Plain struct, no
macros — built via the constructor functions in Harlock.Elements
(text/2, vbox/1, box/1, etc.).
Column spec for Harlock.Elements.table/1, built via
Harlock.Elements.column/1
View-tree constructors. Auto-imported into apps via use Harlock.App,
so most apps use text(...), vbox(...), box(...) etc. directly
without qualification.
Read access to focus state during view/1 and update/2 callbacks.
Ratatui-style constraint layout solver.
A rectangle in cell coordinates, returned by Harlock.Layout.split/3.
A 2D grid of cells of fixed dimensions, returned by Harlock.Test.cells/1.
A single terminal cell.
Visual attributes for a rendered cell.
Subscriptions — long-running sources of events that the runtime starts and stops as the model changes.
POSIX termios access for /dev/tty via a small NIF.
Test harness for Harlock apps.
Pure helpers for editing a (value, cursor) pair.
Visual theme tokens used by the renderer.
Display-column width of strings and graphemes for terminal rendering.