SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Python TUI Projects
-
Where to check it out: https://github.com/Textualize/rich
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
textual
The lean application framework for Python. Build sophisticated user interfaces with a simple Python API. Run your apps in the terminal and a web browser.
Excellent article of what is going on in the terminal space, agree on the TUI section where we are seeing lots of terminal tools being built in Rust and Go and libraries such as Ratatui [1] and Bubble Tea [2] becoming a new modern alternative to ncurses for building TUIs.
Python has Textualize which is also very popular for building terminal user interfaces [3]
And we've noticed this renaissance as well of new CLI and TUI tools that we list on Terminal Trove [4].
[1] https://ratatui.rs/
[2] https://github.com/charmbracelet/bubbletea
[3] https://textual.textualize.io/
[4] https://terminaltrove.com/
-
Project mention: Data Science at the Command Line, 2nd Edition (2021) | news.ycombinator.com | 2024-05-06
I'd like to call out one of my favorite pieces of software from the past 10 years: VisiData [1] has completely changed the way I do ad-hoc data processing, and is now my go-to for pretty much all use cases that I previously used spreadsheets for, and about half of those I previously used databases for.
It's a TUI application, not strictly CLI, but scriptable, and I figure anyone building pipelines using tools like jq, q, awk, grep, etc. to process tabular data will find it extremely useful.
----
[1]: https://visidata.org
-
-
-
asciimatics
A cross platform package to do curses-like operations, plus higher level APIs and widgets to create text UIs and ASCII art animations
-
This is why Textualize[1] concerns me. I've tried a few of the applications using their framework, and they have noticable keypress latency. I didn't think it was possible to make a bloated TUI, but they have somehow succeeded. This might just be a Python thing because of the GIL, because VisiData[2] has the same problem.
It's reminiscent of scroll-jacking, excessive animation, and other web GUI bloat, just translated to TUIs.
[1]: https://www.textualize.io/
[2]: https://www.visidata.org/
-
-
pytermgui
Python TUI framework with mouse support, modular widget system, customizable and rapid terminal markup language and more!
-
But how do I just run/open the god damn program? I've already installed dooit through the pip command and I know that's the right file location. I can literally see the file, just cant double click to open it any other way than with python. And the website doesn't have much more than some graphics of it.
-
elia
A snappy, keyboard-centric terminal user interface for interacting with large language models. Chat with ChatGPT, Claude, Llama 3, Phi 3, Mistral, Gemma and more.
Project mention: Elia, A snappy, keyboard-centric terminal UI for interacting with LLM | news.ycombinator.com | 2024-05-21 -
Project mention: Ask HN: Interesting TUIs (text user interfaces), maybe forgotten ones? | news.ycombinator.com | 2024-05-06
Euporie is the most complex TUI application I have built:
https://github.com/joouha/euporie
It consists of a TUI editor (and interactive REPL) for Jupyter notebooks, and supports displaying rich output in the terminal (images, LaTeX, HTML, interactive widgets, etc.).
-
-
cli-apps
The largest Awesome Curated list of CLI/TUI applications with source data organized into CSV files
Project mention: Ask HN: Interesting TUIs (text user interfaces), maybe forgotten ones? | news.ycombinator.com | 2024-05-06I personally love TUI software, you don't have to worry about GUI toolkits, mouse focused interaction, you can run them remotely over SSH, they're often composable, and composability is much easier, and who doesn't like the hackerman aesthetic?
Some things I don't like about modern TUIs is developers getting away from the purpose of them, portability. Often you'll find really beautiful TUIs that require installation of custom fonts for icons and other overcomplicated stuff like that. They can be nice, but generally they sacrifice the practical benefit to a significant degree.
One I discovered yesterday, not really a TUI, more of a shell but still, extremely powerful, is kalc https://github.com/bgkillas/kalc which is a complete scientific and graphing calculator in the terminal. It depends on gnuplot which is unfortunate since that is a GUI program, but there we go with composability again! It's fine and works and does what it needs to, so not really a big deal I guess.
To find more:
https://github.com/rothgar/awesome-tuis
https://github.com/toolleeo/cli-apps
-
-
RecoverPy
Interactively find and recover deleted or :point_right: overwritten :point_left: files from your terminal
Project mention: RecoverPy 2.1.3: A Linux tool to recover deleted or overwritten files | /r/opensource | 2023-10-23 -
Sounds like toot?
-
-
-
-
kaskade
kaskade is a text user interface for kafka, which allows you to interact and consume topics from your terminal in style!
Project mention: Kaskade (TUI for Kafka) protobuf support is out | news.ycombinator.com | 2024-07-14 -
picotui
Lightweight, pure-Python Text User Interface (TUI) widget toolkit with minimal dependencies. Dedicated to the Pycopy project.
-
Python TUI discussion
Python TUI related posts
-
Show HN: Termichess – Play chess right on your terminal
-
The Modern CLI Renaissance
-
Aerc: A Well-Crafted TUI for Email
-
Show HN: An HP 15C themed TUI RPN calculator
-
Terminal ASCII Paint tool written in Python
-
Things I've learned building a modern TUI Framework
-
Terminal Based Markdown Browser
-
A note from our sponsor - SaaSHub
www.saashub.com | 9 Oct 2024
Index
What are some of the best open-source TUI projects in Python? This list will help you:
Project | Stars | |
---|---|---|
1 | rich | 49,065 |
2 | textual | 25,204 |
3 | visidata | 7,840 |
4 | posting | 4,647 |
5 | s-tui | 4,139 |
6 | asciimatics | 3,630 |
7 | toolong | 3,119 |
8 | frogmouth | 2,494 |
9 | pytermgui | 2,247 |
10 | dooit | 2,071 |
11 | elia | 1,780 |
12 | euporie | 1,623 |
13 | calcure | 1,532 |
14 | cli-apps | 1,497 |
15 | smassh | 1,349 |
16 | RecoverPy | 1,297 |
17 | toot | 1,148 |
18 | terraform-tui | 1,008 |
19 | textual-paint | 941 |
20 | tg | 936 |
21 | kaskade | 830 |
22 | picotui | 802 |
23 | topydo | 776 |