Sonar helps you commit clean code every time. With over 225 unique rules to find Python bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work. Learn more →
Top 17 Python Command-line Application Development Projects
-
Python Fire
Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object.
-
Project mention: Speak English to me, The secret World of Programmers | news.ycombinator.com | 2023-03-16
-
InfluxDB
Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
-
I don't have huge experience with Python, but I used async code with C#/Typescript and lately I had to use some asyncio magic.
I found this article: https://blog.dalibo.com/2022/09/12/monitoring-python-subproc... and while async/await syntax is the same, it's not entirely clear for me, why there's some event loop and what exactly happens, when I pass function to asyncio.run(), like here: https://github.com/pallets/click/issues/85#issuecomment-5034...
So, you can use it and it's not that hard, but there are some parts that are vague for me, no matter which language implements async support.
-
I used this template repo to make a bash cli https://github.com/SierraSoftworks/bash-cli then I made a brew formula to make it installable. It provide a nice way to make a cli with nested commands like git. As others mentioned other languages like python have great support for making nice clis see https://typer.tiangolo.com/ for an example framework in python. I chose bash because packaging a python cli for a private brew package is a pain and 99% of what I needed the cli to do was inkoke other clis, so bash made sense for my case.
-
Project mention: Show HN: Replbuilder, quickly build a Python REPL CLI prompt | news.ycombinator.com | 2023-02-19
> The purpose is not to do this however, the goal for a repl cli is usually to invoke a set of particular, already implemented commands, not on the fly python input and output. The implementation will be predefined and packaged, repl are only used to run a list of specific commands with arguments that implementation has already defined.
That's a very strange definition for a REPL, I would just call that an (interactive) CLI. Maybe that's why you couldn't find anything when you were doing your search? I used python-prompt-toolkit [0] when building such interfaces. pgcli [1] is an example of such an interface built with prompt-toolkit.
It has a lot of nice autocomplete and readline emulation options. Maybe it's something you can integrate with your project.
-
Project mention: Docopt.sh – Command-Line Argument Parser for Bash 3.2, 4, and 5 | news.ycombinator.com | 2023-03-16
For anyone unfamiliar, docopt is an established standard for specifying arguments in a script’s doc string. I use it for Python and it’s lovely. You’re going to write a docstring with examples anyway, why not make them functional?
-
asciimatics
A cross platform package to do curses-like operations, plus higher level APIs and widgets to create text UIs and ASCII art animations
Project mention: I'm making a notes app and am up to making an 'edit' feature, but have no way of making changes to a file's contents, let alone saving the changes and writing them to the file | reddit.com/r/learnpython | 2023-01-19Scroll down to the TUI example in the README, just above the documentation link: https://github.com/peterbrittain/asciimatics
-
Sonar
Write Clean Python Code. Always.. Sonar helps you commit clean code every time. With over 225 unique rules to find Python bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.
-
Pyshark: https://github.com/KimiNewt/pyshark Requests: https://github.com/psf/requests Colorama:https://github.com/tartley/colorama
-
if you liked that, you'll love Plumbum[1] :)
-
-
-
-
-
Since you are building a TUI (textual user interface), you might benefit from libraries like https://github.com/kennethreitz-archive/clint or https://github.com/Textualize/rich
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Python Command-line Application Development related posts
- Docopt.sh – Command-Line Argument Parser for Bash 3.2, 4, and 5
- How to make a CLI?
- Speak English to me, The secret World of Programmers
- What is the status of Python 3.11?
- Overhead of Python Asyncio Tasks
- Typer: CLI building library based on Python type hints
- I am sick of writing argparse boilerplate code, so I made "duckargs" to do it for me
-
A note from our sponsor - Sonar
www.sonarsource.com | 25 Mar 2023
Index
What are some of the best open-source Command-line Application Development projects in Python? This list will help you:
Project | Stars | |
---|---|---|
1 | Python Fire | 24,199 |
2 | Gooey | 17,423 |
3 | click | 13,610 |
4 | typer | 10,759 |
5 | python-prompt-toolkit | 8,221 |
6 | docopt | 7,760 |
7 | asciimatics | 3,272 |
8 | colorama | 3,098 |
9 | plumbum | 2,561 |
10 | cement | 1,155 |
11 | Argh | 342 |
12 | cliff | 212 |
13 | Manage | 123 |
14 | clint | 86 |
15 | SyncShell | 53 |
16 | escape | 9 |
17 | asynccli | 6 |