A list of awesome Python frameworks and libraries for interacting with the console. A lot of these libraries have functionality in common which makes it hard to put them into sections... but I tried.
Go beyond argparse with these incredible libraries
- argparse - Built in
- click - (11k)
- docopt - (7k) Declarative approach
- fire - (20k) Add a CLI to any object
- typer - (6k) Add functions to CLI by decorating them
Who'd have thought that the terminal is copable of rendering all these?
- huepy - (0.4k) Colored text (There are many more like this)
- colr - Colored text in RGB
- colorama - (3k) Makes ANSI colors work on windows
- rich - (28k) Has got a bit of everything
- bashplotlib - (2k) Plots in the terminal
- emoji - (1k) Emojis in terminal
- mdv - (2k) Markdown in terminal
Add progress to loops. Don't ask me why we got so many libraries for this
- progress - (1k) Fancy
- progressbar - (0.7k) Extra Fancy
- tdqm - (19k) Extremely Fancy
- alive-progress - (3k) Ridiculously Fancy
- halo - (3k) Without the bar, just spinners
- fastprogress - (1k) Also being targeted Jupyter Notebook
- + rich + prompt_toolkit
These combine a bit of everything
- cmd - Built in
- prompt_toolkit - (7k) Borderline TUI
- questionary - (0.7k) Create pretty user prompts
- pyinquirer - (1k) Cool
- cement - (1k) Well documented and extensive
Like GUI but in your console
- curses - Built in on linux
- textual - (4k) Based on rich
- urwid - (2k) Solid
- asciimatics - (3k) Also has fancy ASCII animations
- blessed - (0.7k) Based on curses, but it's like blessed... get it?
- npyscreen - (0.4k) A classic but now unmaintained library
Cool libs that don't fit anywhere else