🌐
PyPI
pypi.org › project › cli-ui
cli-ui · PyPI
import cli_ui # coloring: cli_ui.info( "This is", cli_ui.red, "red", cli_ui.reset, "and this is", cli_ui.bold, "bold" ) # enumerating: list_of_things = ["foo", "bar", "baz"] for i, thing in enumerate(list_of_things): cli_ui.info_count(i, len(list_of_things), thing) # progress indication: cli_ui.info_progress("Done", 5, 20) cli_ui.info_progress("Done", 10, 20) cli_ui.info_progress("Done", 20, 20) # reading user input: with_sugar = cli_ui.ask_yes_no("With sugar?", default=False) fruits = ["apple", "orange", "banana"] selected_fruit = cli_ui.ask_choice("Choose a fruit", choices=fruits) # ...
Discussions

user interface - Python Terminal/Text UI (TUI) library - Stack Overflow
How can I make a console GUI (more appropriately called TUI) ? It's important to note that I will be changing the text in some of the spots, and this is why I can't have it just print to the scree... More on stackoverflow.com
🌐 stackoverflow.com
Best library for TUI (Text User Interface) and CLI (Command line Interface)
I'm a huge fan of Typer . I agree with all the advantages listed on the homepage (intuitive, easy, concise, scalable). Give it a try. More on reddit.com
🌐 r/learnpython
5
3
October 20, 2022
I'm trying to make a fancy CLI interface in python. Curses is very confusing (and I can't find a good tutorial!) Any suggestions?
To be precise with terms—what you are asking is a textual user interface (TUI) , not command-line interface (CLI) . And, yes, blessings looks like the best candidate for the job. More on reddit.com
🌐 r/Python
24
24
October 7, 2012
Recommended library for an interactive CLI?
You’re looking for a TUI, a Text User Interface Library. Here are some examples: https://github.com/bczsalba/pytermgui https://github.com/Textualize/textual There are a number of TUI libraries, I expect you can find on that fits your needs if you search for Python TUI. Gooey is an interesting tool that may get you most of the way to what you want. It creates a GUI automatically from the same set of directives you would use to set up a command line utility (argparse). https://github.com/chriskiehl/Gooey More on reddit.com
🌐 r/learnpython
10
8
February 11, 2022
🌐
GitHub
github.com › your-tools › python-cli-ui
GitHub - your-tools/python-cli-ui: Tools for better command line interfaces · GitHub
import cli_ui # coloring: cli_ui.info( "This is", cli_ui.red, "red", cli_ui.reset, "and this is", cli_ui.bold, "bold" ) # enumerating: list_of_things = ["foo", "bar", "baz"] for i, thing in enumerate(list_of_things): cli_ui.info_count(i, len(list_of_things), thing) # progress indication: cli_ui.info_progress("Done", 5, 20) cli_ui.info_progress("Done", 10, 20) cli_ui.info_progress("Done", 20, 20) # reading user input: with_sugar = cli_ui.ask_yes_no("With sugar?", default=False) fruits = ["apple", "orange", "banana"] selected_fruit = cli_ui.ask_choice("Choose a fruit", choices=fruits) # ...
🌐
PyPI
pypi.org › project › python-cli-ui
python-cli-ui · PyPI
Download URL: python_cli_ui-0.7.5-py3-none-any.whl
      » pip install python-cli-ui
    
Published: Feb 20, 2019
Version: 0.7.5
🌐
Your-tools
your-tools.github.io › python-cli-ui
Python CLI UI — cli_ui 0.1.0 documentation
cli-ui is available on Pypi. and is compatible with Python 3.9 and higher.
🌐
Medium
k3no.medium.com › command-line-uis-in-python-80af755aa27d
Command Line UI’s in Python. A practical overview for you and me. | by Keno Leon | Medium
July 17, 2021 - Your CLI doesn’t have to be boring ... related Python libraries you can spruce up your CLI, I am sure there are many more but these 3 libraries should give you a good start and ideas about the possibilities… · COLORAMA. Add some color to your CLI : Let there be (some) color ! TQDM. The go to for your progress bar needs: And you should get a nice progress bar after running it ( works in most terminal environments including notebooks ) : ... ART. ASCII art for your UI ...
🌐
Python
docs.python.org › 3 › library › cmdlinelibs.html
Command-line interface libraries — Python 3.15.0 documentation
The Python standard library » · Command-line interface libraries · | Theme · Auto · Light · Dark | The modules described in this chapter assist with implementing command line and terminal interfaces for applications. Here’s an overview: argparse — Parser for command-line options, arguments and subcommands ·
🌐
Awesome Python
awesome-python.com › awesome python › cli & gui
Python CLI & GUI Libraries - Awesome Python
Explore 34 curated Python projects in CLI & GUI. Part of the Awesome Python catalog.
Find elsewhere
🌐
GitHub
github.com › shadawck › awesome-cli-frameworks
GitHub - shadawck/awesome-cli-frameworks: Collection of tools to build beautiful command line interface in different languages · GitHub
Tyro : Tool for generating command-line interfaces and configuration objects in Python. Typer : Library for building CLI applications that users will love using and developers will love creating.
🌐
Opensource.com
opensource.com › article › 17 › 5 › 4-practical-python-libraries
4 Python libraries for building great command-line user interfaces | Opensource.com
May 9, 2017 - By the end of this article, readers should have a good understanding of how to use Prompt Toolkit, Click (Command Line Interface Creation Kit), Pygments, and Fuzzy Finder to implement an easy-to-use REPL. I plan to achieve this in fewer than 20 lines of Python code. Let's begin. ... I like to think of this library as the Swiss Army knife of command-line apps—it acts as a replacement for readline, curses, and much more.
🌐
DEV Community
dev.to › wmramadan › textual-is-the-only-python-terminal-ui-framework-you-will-need-3f4e
Textual is the only Python Terminal UI Framework you will need. - DEV Community
August 24, 2022 - IF you ever wanted to build rich User Interfaces that work in the terminal with mouse support written in Python, then Textual is the Library for you. The framework is completely written in Python and supports CSS for styling. You can use the mouse or shortcut keys for navigation. You may be asking why would you need a UI framework for the terminal, well to me here are some of the benefits:
🌐
Dimitri Merejkowsky
dmerej.info › blog › post › introducing-python-cli-ui
Introducing python-cli-ui • Dimitri Merejkowsky - dmerej.info
>>> months = ["January", "February", ..., "December"] >>> for i, month in enumerate(months): >>> ui.info_count(i, 12, month) * ( 1/12) January * ( 2/12) February ...
🌐
The Hitchhiker's Guide to Python
docs.python-guide.org › scenarios › cli
Command-line Applications — The Hitchhiker's Guide to Python
Cement is an advanced CLI Application Framework. Its goal is to introduce a standard and feature-full platform for both simple and complex command line applications as well as support rapid development needs without sacrificing quality. Cement is flexible, and its use cases span from the simplicity of a micro-framework to the complexity of a mega-framework. Python Fire is a library for automatically generating command-line interfaces from absolutely any Python object.
🌐
PyPI
pypi.org › project › cli2gui
cli2gui · PyPI
Cli2Gui enables you to convert command-line interface (CLI) applications into graphical user interfaces (GUIs) with minimal effort. Designed to accommodate a wide variety of use cases, this library allows developers to maintain a CLI while ...
🌐
ThemeSelection
themeselection.com › home › collections › 9 must have python cli library for developers in 2025
10+ Best Python CLI Library for Developers - ThemeSelection
August 11, 2026 - Various widgets for text UIs – e.g. buttons, text boxes, radio buttons, etc. Keyboard input (without blocking or echoing) including Unicode support ... Cement is a Python CLI library that provides a robust framework for building command-line applications with a focus on modularity and extensibility.
🌐
Urwid
urwid.org
— Urwid 4.2.0
Navigation · index · Urwid 4.2.0 » · Urwid · Console user interface library for Python · Download: urwid-4.2.0.tar.gz · Changelog · git clone https://github.com/urwid/urwid.git · Github page · Issues
🌐
Qodo
qodo.ai › blog › code integrity › building user-friendly python command-line interfaces with click
Building User-Friendly Python CLI with Click - Qodo
February 17, 2025 - Wide adoption: Click is a widely adopted and well-maintained library. Many Python CLI tools and applications, including popular ones like Flask and Django, use Click for their command-line interfaces.
🌐
Real Python
realpython.com › courses › command-line-interfaces
Command Line Interfaces in Python – Real Python
August 31, 2020 - Adding the capability of processing Python command line arguments provides a user-friendly interface to your text-based command line program.
🌐
Real Python
realpython.com › python-textual
Python Textual: Build Beautiful UIs in the Terminal – Real Python
July 3, 2026 - Interactive Quiz Python Textual: Build Beautiful UIs in the Terminal · In this quiz, you'll test your understanding of the Python Textual library. This library is used to create rich terminal applications and widgets.