Skip to content

Latest commit

 

History

History

docs

README.md

étui documentation

Guides for using the library. API details also live in /// doc comments on each public function (HexDocs after publish).

Guide Contents
Getting started Dependency, minimal app, app loop, crash-restore
Layout geometry.split, constraints, spacing
Styling Colors, modifiers, spans
Themes Built-in palettes and runtime switching
Widgets Full widget reference
Custom widgets Composition, stateful/animated helpers
Animation run_animated, anim helpers
Focus FocusRing for multi-panel UIs
Migrating to 2.0 What changed from 1.x, what breaks, and what does not
Terminal state What is restored on the way out, and what happens when nothing gets to run

Targets

Target Backend App loop
Erlang (default) etui/backend/erlang via default.new() app.run_buffered → AppResult
JavaScript (Node) etui/backend/node via default.new() app.run_buffered → Promise(AppResult)

Use gleam run --target erlang for terminal apps and gleam run --target javascript for the JS smoke path.

Examples in this repo

Runnable demos live under dev/ (not shipped on Hex): etui_showcase, etui_filebrowser, etui_interactive, etc.