InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →
Top 23 Python Bash Projects
-
powerline
Powerline is a statusline plugin for vim, and provides statuslines and prompts for several other applications, including zsh, bash, tmux, IPython, Awesome and Qtile.
-
Stream
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
-
-
jc
CLI tool and python library that converts the output of popular command-line tools, file-types, and common strings to JSON, YAML, or Dictionaries. This allows piping of output to tools like jq and simplifying automation scripts.
I guess I don't see those as big downsides because I don't think people usually want binary data or quoted strings back from a CLI command, nor do they want column oriented output, nor "user friendly" tables.
Answering --help with JSON is a good example, how bad is it really if the response is JSON? Well, using less works fine still and you can still grep if you want simple substring search. Wanting a section is probably more common, so maybe you'd "grep" for a subcommand with `jq .subcommand` or an option with `jq .subcommand.option`. Tables and tab-or-space delimited output overflow char limits, force the command-generator to figure out character wrapping, and so on. Now you need a library to generate CLI help properly, but if you're going to have a library why not just spit JSON and decouple completely from display details.
Structured output by default just makes sense for practically everything except `cat`. And while your markdown files or csv files might have quoted strings, looking at the raw files isn't something people really want from shells or editors.. they want something "rendered" in one way or another, for example with syntax highlighting.
Basically in 2025 neither humans nor machines benefit much from unstructured raw output. Almost any CLI that does this needs to be paired with a parser (like https://github.com/kellyjonbrazil/jc) and/or a renderer (like https://github.com/charmbracelet/glow). If no such pairing is available then it pushes many people to separately reinvent parsers badly. JSON's not perfect but (non-minified) it's human-readable enough to address the basic issues here without jumping all the way towards binary or (shudder) HTML
-
I thought that using Makefile targets was the shortest friendliest to show what a project can do. Turns out make and Makefiles can be mysterious when they fail.
Tutorials are "best-effort" and often don't dwell on the rabbit-holes they create when a poor soul runs astray of the sunny path.
Example of a good tutorial:
Python's powerline shell: https://github.com/b-ryan/powerline-shell
The README is succinct. Well put together.
-
dev-setup
macOS development environment setup: Easy-to-understand instructions with automated setup scripts for developer tools like Vim, Sublime Text, Bash, iTerm, Python data analysis, Spark, Hadoop MapReduce, AWS, Heroku, JavaScript web development, Android development, common data stores, and dev-based OS X defaults.
-
-
xxh
🚀 Bring your favorite shell wherever you go through the ssh. Xonsh shell, fish, zsh, osquery and so on.
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
-
-
-
-
I work on Harbor (https://github.com/av/harbor), it is a project to save hours when setting up LLMs locally.
I pre-integrated over 50 different LLM-related projects, added a nice CLI and a Desktop app on top to manage the configs.
-
Bashfuscator
A fully configurable and extendable Bash obfuscation framework. This tool is intended to help both red team and blue team.
-
-
video-to-ascii
It is a simple python package to play videos in the terminal using characters as pixels
-
-
Project mention: Ask HN: Favorite LLM CLI tools for your terminal workflow? | news.ycombinator.com | 2025-08-10
-
funky
Funky takes shell functions to the next level by making them easier to define, more flexible, and more interactive.
-
-
please
🙏 Please CLI - Minimalistic New Tab Page CLI Tool with a greeting, date and time, inspirational quotes and your personal tasks and to-do list (by NayamAmarshe)
-
-
-
autogpt4all
🛠️ User-friendly bash script for setting up and configuring your LocalAI server with the GPT4All for free! 💸
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Python Bash discussion
Python Bash related posts
-
The Terminal of the Future
-
Part 2: Building MCP Servers to Control a Home Coffee Roaster - An Agentic Development Journey with Warp
-
How I stopped worrying and loved Makefiles
-
Ask HN: Favorite LLM CLI tools for your terminal workflow?
-
YAML: The Norway Problem (2022)
-
FFmpeg by Example
-
Nautical Backup – A simple Docker volume backup tool
-
A note from our sponsor - InfluxDB
www.influxdata.com | 15 Nov 2025
Index
What are some of the best open-source Bash projects in Python? This list will help you:
| # | Project | Stars |
|---|---|---|
| 1 | powerline | 14,610 |
| 2 | xonsh | 9,047 |
| 3 | jc | 8,432 |
| 4 | powerline-shell | 6,280 |
| 5 | dev-setup | 6,213 |
| 6 | yadm | 6,009 |
| 7 | xxh | 5,799 |
| 8 | ntfy | 4,923 |
| 9 | Pokemon-Terminal | 4,712 |
| 10 | doitlive | 3,519 |
| 11 | 100-redteam-projects | 2,664 |
| 12 | harbor | 2,144 |
| 13 | Bashfuscator | 1,818 |
| 14 | script-server | 1,810 |
| 15 | video-to-ascii | 1,761 |
| 16 | Rotten-Scripts | 1,532 |
| 17 | gorilla-cli | 1,347 |
| 18 | funky | 665 |
| 19 | genv | 653 |
| 20 | please | 608 |
| 21 | cheatsheets | 528 |
| 22 | jello | 524 |
| 23 | autogpt4all | 458 |