0.1.0

First release as a library.

Extracted from the application it grew inside: :atui is now a package with no application callback module of its own, and the demo it was written against lives in demo/ as a separate project depending on it by path.

  • Atui.Runtime — the IO loop: raw terminal, a stack of views, per-view timers, and a repaint that writes only when the frame changed
  • Atui.View — the view behaviour, with mount/1, render/2, place/2 and callbacks for keys, ticks and events
  • Atui.Panes — a tiling window manager a view holds in its own state: open and close windows, move focus in two axes, swap positions, one ticker per pane. Extracted from the demo's root view, where it was not reusable.
  • Atui.Screen / Atui.Rect / Atui.Layout — clipped cell drawing, box borders, geometry and grid splitting
  • Atui.Style — styles as data, emitted as SGR runs at render time
  • Atui.Key / Atui.Input / Atui.Terminal — byte decoding including modified keys, and the raw-mode setup a BEAM TUI actually needs
  • Atui.version/0 — for an application to put in a title bar