# Atui v0.3.0 - Table of Contents > A terminal UI toolkit for Elixir, in the shape of Phoenix LiveView: stateful views, tiled windows, styled cells and an IO loop that only writes when the frame changes. ## Pages - [Atui](readme.md) - [Changelog](changelog.md) - [LICENSE](license.md) ## Modules - Runtime - [Atui](Atui.md): A terminal UI toolkit for Elixir, in the shape of Phoenix LiveView. - [Atui.Fetch](Atui.Fetch.md): Runs a slow thing off the UI's process and sends the answer back to a view. - [Atui.Runtime](Atui.Runtime.md): The main IO loop: owns the terminal, the view stack and every view's timer. - Views - [Atui.Panes](Atui.Panes.md): A tiling window manager a view can hold in its own state. - [Atui.View](Atui.View.md): The behaviour every screen implements — the LiveView half of Atui. - Widgets - [Atui.TextInput](Atui.TextInput.md): A single-line text field a view holds in its own state. - Drawing - [Atui.Layout](Atui.Layout.md): Splits a rect into non-overlapping rects. - [Atui.Rect](Atui.Rect.md): A rectangular region of the terminal, in cell coordinates. - [Atui.Screen](Atui.Screen.md): A fixed-size grid of terminal cells that views draw into. - [Atui.Style](Atui.Style.md): Colour and text attributes for a cell. - [Atui.Text](Atui.Text.md): The things a terminal UI does to a string that does not fit, and the one it does to a string it did not write. - Terminal - [Atui.Input](Atui.Input.md): Reads the terminal and sends decoded keys to a target process. - [Atui.Key](Atui.Key.md): Decodes a raw byte stream from the terminal into key events. - [Atui.Terminal](Atui.Terminal.md): Terminal setup, teardown and the handful of ANSI sequences the runtime needs.