Textual is a TUI (Text User Interface) framework for Python inspired by modern web development. Textual uses Rich to render rich text, so anything that Rich can render may be used in Textual. Event handling in Textual is asynchronous (using async and await keywords). Widgets (UI components) can independently update and communicate with each other via message passing. Textual has more in common with modern web development than it does with {curses;} layout is done with CSS grid and (soon) the theme may be customized with CSS. Other techniques are borrowed from JS frameworks such as Vue and React.

WWW: https://github.com/willmcgugan/textual
