Ratatouille v0.5.1 API Reference
Ratatouille is a framework for building terminal UIs.
Ratatouille.App behaviour. It provides the structure for
architecting both large and small terminal applications. This structure
allows you to render views and update them over time or in response to user
A wrapper of
ExTermbox.EventManager so that Ratatouille applications don't
need to use or depend on ex_termbox directly.
Logic to render a view tree.
Functions for working with element attributes
Primitives for rendering borders
This defines the internal representation of a rectangular region---a box---for rendering, as well as logic for transforming these boxes.
A canvas represents a terminal window, a subvision of it for rendering, and a sparse mapping of positions to cells.
Functions for working with canvas cells.
Primitives for rendering lines
Primitives for rendering text
Commands provide a way to start an expensive call in the background and get
the result back via
Defines a struct to store the runtime loop's state.
Subscriptions provide a way for the app to be notified via
Ratatouille.App.update/2 when something interesting happens.
A supervisor to run the application runtime and its dependencies.
In Ratatouille, a view is simply a tree of elements. Each element in the tree holds an attributes map and a list of zero or more child nodes. Visually, it looks like something this
A GenServer to manage the terminal window, along with a client API to perform updates and retrieve window information.