ramiro / textual

A Text User Interface with Rich as the renderer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Textual

Textual is a TUI (Text User Interface) framework for Python using Rich as a renderer.

The end goal is to be able to rapidly create rich terminal applications that look as good as possible (within the restrictions imposed by a terminal emulator).

Rich TUI will integrate tightly with its parent project, Rich. Any of the existing renderables can be used in a more dynamic application.

Textual will be eventually be cross platform, but for now it is MacOS / Linux only. Windows support is in the pipeline.

This project is currently a work in progress and may not be usable for a while. Follow @willmcgugan for progress updates, or post in Discussions if you have any requests / suggestions.

screenshot

Updates

I'll be documenting progress in video form.

Update 1 - Basic scrolling

Textual update 1

Update 2 - Keyboard toggle

Textual update 2

Update 3 - New scrollbars, and smooth scrolling

Textual update 3

Update 4 - Animation system with easing function

Now with a system to animate a value to another value. Here applied to the scroll position. The animation system supports CSS like easing functions. You may be able to tell from the video that the page up / down keys cause the window to first speed up and then slow down.

Textual update 4

Update 5 - New Layout system

A new update system allows for overlapping layers. Animation is now synchronized with the display which makes it very smooth!

Textual update 5

Update 6 - New Layout API

New version (0.1.4) with API updates and the new layout system.

Textual update 5

About

A Text User Interface with Rich as the renderer

License:MIT License


Languages

Language:Python 100.0%