awesome-shell

A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php.

GitHub

33k stars
775 watching
2k forks
last commit: about 2 months ago
Linked from 22 awesome lists

awesomeawesome-listbashclifishlistshellzsh

Awesome Shell

Awesome Zsh 15,302 5 days ago
Awesome Fish 4,168 2 months ago
Awesome Bash 7,826 17 days ago

Awesome Shell / Shells

bash GNU Project's shell (Bourne Again SHell)
elvish Friendly, expressive shell features like anonymous functions and data structures
es The extensible shell, based on Plan 9's shell
fish Smart and user-friendly command line shell
ion 1,463 21 days ago A modern system shell that features a simple, yet powerful, syntax. It is written entirely in Rust
ksh93 558 over 1 year ago Korn Shell
mksh 208 about 2 months ago MirBSD Korn Shell
murex 1,464 12 days ago A smarter shell and scripting environment with advanced features designed for usability, safety and productivity (eg smarter DevOps tooling)
ngs 1,453 12 days ago Fully featured scripting language created specifically for Ops. REPL is being developed
nushell 31,825 11 days ago A modern shell written in Rust
oksh 354 3 months ago Portable OpenBSD ksh
osh Bash compatible, with new/modern Unix shell language called Oil
pdksh Public domain Korn shell
powershell a cross-platform task automation and configuration management framework, consisting of a command-line shell and scripting language
shell++ 151 over 1 year ago Friendly and modern functional and object oriented shell script language
shenv 42 5 months ago Simple shell version management
tcsh C shell with file name completion and command line editing
xonsh Python-ish, BASHwards-looking shell language and command prompt
yash 329 12 days ago A POSIX-compliant command line shell with built-in support for completion and prediction based on command history
zsh Powerful shell with scripting language

Awesome Shell / Command-Line Productivity

AdvancedNewFile 259 7 months ago Fast creation of files and directories in a recursive way. Inspired by the Vim plugin
ag 26,096 4 months ago Super fast string search through a directory hierarchy
aliases 561 7 months ago Contextual, dynamic, organized aliases for bash
arttime 925 2 months ago Beauty of text art meets functionality of clock, timer, pomodoro++ time manager
autoenv 5,681 13 days ago Directory-based environments
await 139 2 months ago single binary that run list of commands in parallel and waits for their termination
bartib 669 4 months ago A simple timetracker for the command line. It saves a log of all tracked activities as a plaintext file and allows you to create flexible reports
bashhub 1,250 about 2 months ago Bash history in the cloud. Indexed and searchable
boilr 1,721 over 1 year ago A blazingly fast CLI tool for creating projects from boilerplate templates
boom 1,284 over 1 year ago Store links and snippets in the command line
borg 1,607 over 6 years ago A terminal based search engine for bash commands
broot 10,605 19 days ago A better way to navigate directories
browsh 16,967 4 months ago The modern text-based browser
Buku 6,468 13 days ago Powerful command-line bookmark manager
byobu Text-based window manager and terminal multiplexer
cod 516 10 months ago — A completion daemon for shell that learns when you invoke commands
CloudClip 79 over 6 years ago Your own clipboard in the cloud, copy and paste text with gist between different systems
ddgr 2,927 about 2 months ago DuckDuckGo from the terminal
desk 2,536 over 2 years ago A lightweight workspace manager for the shell
direnv 12,360 12 days ago An environment switcher for the shell, compare with autoenv
dnote 2,774 3 months ago A simple command line notebook with multi-device sync and web interface
eureka 764 11 months ago CLI tool to input and store your ideas without leaving the terminal
fasd 5,904 over 4 years ago Command-line productivity booster, offers quick access to files and directories
fd 33,579 11 days ago A simple, fast and user-friendly alternative to find
foxy 42 over 6 years ago Plain text bookmarks for Firefox and surf browsers
fselect 3,993 26 days ago Find files with SQL-like queries
funky 645 3 months ago Extends functionality of shell functions making them more powerful and flexible
fz 524 8 months ago Seamless fuzzy tab completion for z
fzf 64,227 11 days ago A command-line fuzzy finder
gitmux 617 4 months ago Show Git status in Tmux status bar
googler 6,088 almost 3 years ago Google Search, Google Site Search, Google News from the terminal
googlr 45 over 5 years ago Command line tool that lets you search Google from your terminal
has 655 12 months ago helps you check presence of various command line tools and their versions on path
how2 5,718 over 1 year ago finds the simplest way to do something in a unix shell. It's like , but you can query it in natural language
navi 14,901 14 days ago An interactive cheatsheet tool for the command-line
hhighlighter 467 7 months ago Colorize words in a command output
hr 1,277 almost 2 years ago for your terminal
hss 350 over 2 years ago An interactive parallel ssh client featuring autocomplete and asynchronous execution
hstr 4,055 2 months ago Bash History Suggest Box
k 1,781 over 1 year ago k is a Zsh script to make directory listings more readable, adding Git status, fileweight colors and rotting dates
k alias 21 over 8 years ago get kool aliases (and more) working with a simple one-liner
lf 7,658 29 days ago Terminal file manager written in Go, inspired by ranger
lf.sh 45 over 1 year ago Quickly search files with fewer typings and do many more (grepping, copying path to clipboard, etc)
lowcharts 203 about 1 month ago Draw low-resolution graphs in terminal
Lmod Lua-based Environment Modules that enhances Tcl-based modules while being backward compatible (compare to modules)
loop 674 about 2 years ago Write and control complex loops with as one-liners
marker 2,043 6 months ago Bookmark your shell commands
mackup 14,542 about 2 months ago Keep your application settings in sync (OS X/Linux)
mcfly 6,884 about 1 month ago Fly through your shell history. Great Scot!
modules Classical Tcl-based Environment Modules managing the shell environment (compare to Lmod, direnv, and autoenv)
nnn 19,086 13 days ago File browser and disk usage analyzer with excellent desktop integration
ok-sh 89 6 months ago Do you work on many different projects? And in each project, are there commands you use that are specific to that project? You need a .ok file
parallel Build and execute shell command lines from standard input in parallel
pass Manage passwords from the command line with GPG encryption and optional git integration
pathpicker 5,119 about 1 month ago Accepts inputs like grep, searches, git etc; allows selecting files from the result of the input, which you can then open or provide as argument to a command
pdd 377 4 months ago Tiny date, time diff calculator with timers
percol 3,301 10 months ago Adds flavor of interactive filtering to the traditional pipe concept of UNIX shell
q 69 over 4 years ago Vim like macro registers for your Bash and Zsh Shell
qfc 574 over 2 years ago File-completion widget for Bash and Zsh
resh 1,006 over 1 year ago Contextual shell history for Zsh and Bash
rg 47,924 12 days ago ripgrep is a line oriented search tool that combines the usability of The Silver Searcher with the raw speed of GNU grep
screen GNU terminal multiplexer
shell-history 110 about 4 years ago Visualize your shell usage with Highcharts
SHML 443 over 5 years ago Style framework for the terminal (Shell Markup Language)
slugify 304 over 2 years ago Command that converts filenames and directories to a web friendly format
sman 291 almost 7 years ago A command-line snippet manager
spark 6,002 over 2 years ago ▁▂▃▅▂▇ in your shell
spark.fish 342 over 3 years ago ▁▂▃▅ Sparkline Generator
sheet 262 almost 2 years ago Text snippets for the command line
spot 930 9 months ago Tiny file search utility
snips 81 8 months ago Command line tool to manage snippets of code
sqlline 616 over 1 year ago Shell for issuing SQL to relational databases via JDBC (multiline, completion, highlighting, dialect support)
sshfs 1,154 about 2 years ago A tool for mounting remote file systems over SSH
sudocabulary 161 over 7 years ago Learn English Vocabulary from your terminal
surfraw browse specific site and search the web from your terminal without browser
task-manager 20 over 7 years ago Execute all your scripts with just two or three keystrokes
td-cli 191 about 1 month ago A todo command line manager to organize and manage your todos across multiple projects
tere 1,669 27 days ago A faster alternative to cd + ls
thefuck 84,883 3 months ago Fix common shell mistakes by using an easy to remember command
tldr 705 9 months ago A fully-functional bash client for tldr, simplified and community-driven man pages
tmux Amazing terminal multiplexer
undollar 174 about 6 years ago undollar bites the dollar sign off the tip of the command you just pasted into your terminal
usql 8,905 about 2 months ago Universal command-line interface for SQL databases
v 446 over 5 years ago z for vim
wemux 3,631 about 2 years ago Multi-User Tmux Made Easy
xiki 3,764 almost 5 years ago Makes the shell console more friendly and powerful
xplr 4,148 about 1 month ago A hackable, minimal, fast TUI file explorer
xsv 10,336 4 months ago a fast CSV command line toolkit written in Rust
xxh 5,318 4 months ago Bring your favorite shell wherever you go through the SSH

Awesome Shell / Command-Line Productivity / Directory Navigation

aliasme 115 over 3 years ago alias helper to change directory quickly
autojump 16,216 12 months ago A cd command that learns - easily navigate directories from the command line
bashmarks 1,882 about 2 months ago Directory bookmarks for the shell
bd 920 about 2 years ago Quickly go back to a parent directory
commacd 363 almost 5 years ago A faster way to move around in Bash
enhancd 2,565 6 months ago A next-generation cd command with an interactive filter
goto 874 3 months ago A shell utility for navigation to aliased directories supporting auto-completion
jump 1,782 5 months ago Jump helps you navigate your file system faster by learning your habits
lazy-cd 21 over 4 years ago Simple bash commands for bookmarked navigation of the file system, complete with bash-completion
up 173 about 4 years ago Ascend directories by name or count; for bash, zsh, and fish
z 16,320 4 months ago z is the new j, yo
z.lua 2,978 6 months ago A new cd command that helps you navigate faster by learning your habits
zoxide 22,002 12 days ago A faster way to navigate your filesystem, written in Rust
zpyi 105 about 7 years ago Python in Zsh - Easy python scripting in shell

Awesome Shell / Customization

aphrodite-terminal-theme 145 7 months ago — Minimalistic Aphrodite theme (prompt) for sexy terminals that works in bash, fish and zsh
base16-builder 431 over 3 years ago Base16-Builder
bash-full-of-colors 180 over 2 years ago Powerful prompt with screen, tmux, git support and many more
bash-git-prompt 6,709 3 months ago An informative and fancy Bash prompt for Git users
bash-powerline 891 over 1 year ago Powerline-style Bash prompt in pure Bash script
bashstrap 1,556 over 5 years ago A quick way to spruce up OSX terminal
bullet-train-oh-my-zsh-theme 2,824 3 months ago An oh-my-zsh shell theme based on the Powerline Vim plugin
emojify 1,549 9 months ago Emoji on the command line
flatui-terminal-theme Nicer colors for terminal
geometry 931 10 months ago A minimal ZSH theme where any function can be added to the left prompt or (async) right prompt on the fly
git-prompt 327 5 months ago Bash prompt with Git, SVN and HG modules
gittify 72 over 2 years ago A colorful Bash prompt + customized Git aliases
Gogh - Color Scheme 9,209 28 days ago Color Scheme for Gnome Terminal
liquidprompt 4,486 16 days ago A full-featured & carefully designed adaptive prompt for Bash & Zsh
mysql-colorize 102 almost 4 years ago Colorization for mysql comand-line client
oh-my-git 3,657 over 2 years ago An opinionated git prompt for bash and zsh
oh-my-posh Prompt theme engine for any shell and platform written in go
polyglot 179 10 months ago An informative Git prompt that works in bash, zsh, ksh, mksh, pdksh, oksh, dash, yash, busybox sh, and osh
powerlevel10k 45,778 25 days ago Super flexible awesome powerline ZSH theme
sexy-bash-prompt 1,132 over 3 years ago Bash prompt with colors, Git statuses, and Git branches
starship Fast, customisable, cross-shell prompt written in rust
synth-shell 991 4 months ago Greeter with a customizable status report and a fancy bash prompt

Awesome Shell / For Developers

1Password SSH Agent Authenticate Git and SSH workflows with biometric unlock using 1Password
ack A grep-like search tool optimized for source code
add-gitignore 673 11 months ago Interactive CLI that generates a .gitignore for your project based on your needs
bcal 630 4 months ago Byte CALculator for storage conversions and calculations
bitwise 639 about 1 year ago Terminal based interactive bit manipulator in curses
bocker 11,269 almost 7 years ago Docker implemented in 100 lines of bash
cloc 19,386 20 days ago Count Lines of Code
doclt 47 about 6 years ago A command line interface to Digital Ocean
dokku 29,035 2 days ago Docker powered mini-Heroku. The smallest PaaS implementation you've ever seen
forgit 4,397 12 days ago Utility tool for taking advantage of fuzzy finder fzf
git-extra-commands 1,005 11 days ago Many Git extra utilities. Churn, cut-branch, improved-merge and many more
git-extras 17,301 4 days ago Git utilities -- repo summary, repl, changelog population, author commit percentages and more
git-open 3,306 2 months ago Type to open the GitHub page or website for a repository in your browser
git-quick-stats 6,289 23 days ago Git quick statistics is a simple and efficient way to access various statistics in git repository
git-semver 381 over 4 years ago Git plugin for easing semantic versioning and changelog validation
git-sh 735 over 1 year ago A customized Bash environment suitable for Git work
gita 1,661 4 months ago A command-line tool to manage multiple git repos
hub 22,791 8 months ago hub helps you win at git
just 20,539 11 days ago Task runner for saving and running project-specific commands
licins 23 over 2 years ago Insert commented software licenses into source code
mkdkr 368 over 3 years ago Makefile + Docker = CI Pipeline
mr Multiple Repository management tool
nve 692 28 days ago Run any command on specific Node.js versions
overcommit 3,915 2 months ago A fully configurable and extendable Git hook manager
pre-commit A framework for managing and maintaining multi-language pre-commit hooks
rebound 4,101 over 2 years ago Instantly browse Stack Overflow results in your terminal when you get a compiler error
repren 347 over 2 years ago Command-line search-and-replace and file-renaming swiss army knife
slap 6,140 almost 3 years ago Sublime-like terminal-based text editor that runs on Node.js
shipit 568 over 4 years ago Minimalistic SSH deployment
starring 155 about 7 years ago Automatically star the npm-packages that you are using on GitHub
tag 597 over 1 year ago Instantly jump to your ag matches
trunk Blazingly fast meta code checker and formatter
vmn 62 27 days ago git-based automatic versioning and state recovery solution agnostic to language or architecture
wipe-modules 352 over 1 year ago A little agent that removes the node_modules folder of non-active projects

Awesome Shell / System Utilities

atop ASCII full-screen performance monitor that is capable of reporting the activity of all processes
bat 48,989 11 days ago A clone with wings
bmon 1,187 about 1 year ago Real-time network bandwidth monitor and rate estimator with human-friendly visual output
btop 19,950 18 days ago Linux/OSX/FreeBSD resource monitor
catcli 198 8 months ago The command line catalog tool for your offline data
ccat 3,157 about 2 years ago ccat is the colorizing cat. It works similar to cat but displays content with syntax highlighting
exa 23,578 18 days ago A modern version of
progress 8,542 12 months ago Linux tool to show progress for , , , and more
stronghold 1,090 about 5 years ago Easily configure MacOS security settings from the terminal
glances 26,462 13 days ago Glances an Eye on your system
goaccess 18,258 about 2 months ago GoAccess is a real-time web log analyzer and interactive viewer that runs in a terminal in *nix systems
hblock 1,548 14 days ago Hosts-file based adblocker
histstat 98 over 2 years ago History for netstat
htop 5,839 almost 4 years ago A ncurses based interactive process viewer which aims to be a better
lnav An advanced log file viewer for the small-scale
logdissect 146 2 months ago CLI utility and Python API for analyzing log files and other data
ls++ 502 4 months ago Colorized ls on steroids
lsd 13,277 14 days ago LSDeluxe, rewrite of GNU ls with lot of added features like colors, icons, tree-view and more formatting options
lsp 525 over 3 years ago An improved , with file descriptions in plain language and intelligent file grouping
maza 1,780 about 2 months ago Local ad blocker. Like Pi-hole but local and using your operating system
mtr 2,657 about 2 months ago The functionality of the 'traceroute' and 'ping' programs in a single network diagnostic tool
ncdu NCurses Disk Usage
nmtui 383 12 days ago Text User Interface for controlling NetworkManager
powertop 1,043 7 months ago Battery/Power usage and device stats monitoring command-line tool, with tune-up options
prettyping 1,204 12 months ago Making the output of prettier, more colorful, more compact, and easier to read
procdog 76 about 6 years ago Lightweight command-line control of long-lived processes like servers
quick-secure 413 over 4 years ago Quickly secure and harden UNIX/Linux systems
rng 31 5 months ago Copy range of lines from file or stdin to stdout
tiptop 1,749 17 days ago Graphical command-line system monitor
wifi-wand 66 6 months ago a Ruby command line application for managing WiFi on MacOS (install by )
xiringuito 1,113 almost 3 years ago SSH-based "VPN for poors"

Awesome Shell / Downloading and Serving

aria2 35,286 2 months ago aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, BitTorrent and Metalink
balls 858 about 8 years ago Bash on Balls
bashttpd 1,509 about 5 years ago A web server written in Bash
bashhub-server 306 over 1 year ago Private cloud shell history. Open source server for bashhub
bitpocket 1,027 about 1 year ago "DIY Dropbox" or "2-way directory (r)sync with proper deletion"
Dropbox-Uploader 6,564 4 months ago Dropbox Uploader is a Bash script which can be used to upload, download, list or delete files from Dropbox
httpie 33,577 about 2 months ago HTTPie is a command line HTTP client, a user-friendly cURL replacement
HTTPLab 4,030 8 months ago The interactive web server, let you inspect HTTP requests and forge responses
Kapow! 603 17 days ago If you can script it, you can HTTP it
ngincat 177 about 10 years ago Tiny Bash HTTP server using netcat
resty 2,648 over 1 year ago Little command line REST client that you can use in pipelines
shell2http 1,325 12 days ago HTTP-server to execute shell commands. Designed for development, prototyping or remote control
tshare 122 10 months ago File sharing from commandline
vesper 207 almost 5 years ago 🍸Vesper is a HTTP framework for Bash/Unix Shell
xh 5,482 12 days ago Friendly and fast tool for sending HTTP requests
yt-dlp 83,770 12 days ago Command-line program to download videos from YouTube.com and other video sites

Awesome Shell / Multimedia and File Formats

adb-export 107 about 2 years ago Export Android content providers to CSV format
Android-Kitchen 1,029 over 3 years ago A text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux
Beets 12,816 3 days ago Music library manager and MusicBrainz tagger
cmus 5,514 13 days ago Cross-platform cli audio player
dasel 7,084 12 days ago Query and update data structures using selectors from the command line. Comparable to / but supports JSON, YAML, TOML and XML with zero runtime dependencies
dzr 196 about 1 month ago Cross-platform Deezer.com audio player
fx 18,967 2 months ago Command-line JSON processing tool by anononymus JavaScript functions
gifgen 548 over 1 year ago Simple high quality GIF encoding
image-scraper 756 almost 7 years ago A cool command line image scraper with a lot of features
imgp 1,030 5 months ago Blazing fast batch image resizer and rotator
jc 7,821 16 days ago Convert command output, file-types, and common strings to JSON or YAML for easier use in scripts
jo 4,661 11 months ago A small utility to create JSON objects from command-line arguments
jq 30,210 24 days ago Sed for json data. You can use it to slice and filter and map and transform structured data
korkut 369 almost 2 years ago Quick and simple image processing at the command line
library 358 11 days ago Create SQLITE databases for folders of music, video, images, or online media. Play and track media like Plex but a CLI-only interface with many sorting options
mpv Lets you play most audio and video formats (using ASCII characters) in the shell as well as in a GUI
nehm 85 over 4 years ago Console tool, which downloads, sets IDv3 tags and adds to your iTunes (if you use it) your SoundCloud likes in convenient way
PiCAST 1,768 over 4 years ago PiCAST turns your $35 Raspberry Pi in to a Chromecast like Device
sejda 507 11 days ago Command line manipulation of PDF documents (split, merge, rotate, convert to jpg, extract text, etc)
visidata 7,835 11 days ago A terminal spreadsheet multitool for exploring and arranging data (csv/json/xml/xls/yaml/etc)
xidel 674 6 months ago Cli tool to filter, map and create HTML/XML/JSON data with (Turing-complete) XPath and XQuery
xmlstarlet Old but powerful tool for command-line XML formatting, filtering, and manipulation
yq 11,998 13 days ago yq is a portable command-line YAML processor

Awesome Shell / Applications

ansiweather 1,870 8 months ago Weather in your terminal, with ANSI colors and Unicode symbols
awless 4,976 about 2 years ago A powerful, innovative and small surface CLI to manage AWS
bashblog 1,651 over 1 year ago A Bash script that handles blog posting
carbon-now-cli 5,767 19 days ago 🎨 Beautiful images of your code — from right inside your terminal
choosealicense-cli 71 over 4 years ago Choose an OSS license from the comfort of your terminal
cointop 3,998 6 months ago The fastest and most interactive terminal based UI application for tracking cryptocurrencies
dstask 795 about 2 months ago Single binary terminal-based TODO manager with git-based sync + markdown notes per task
editly 4,747 3 months ago Command line video editor
facebook-cli 397 over 2 years ago Facebook command line tool
fanyi 1,386 12 days ago Translate English to Chinese in terminal
gcalcli 3,306 14 days ago Google Calendar command line interface
geeknote 2,104 over 3 years ago Command line evernote client
haxor-news 3,977 over 2 years ago Browse Hacker News like a haxor
hn-cli 460 about 6 years ago Browse Hacker News from the comfort of your Terminal
iponmap 315 about 8 years ago Draw point on world map using ip address
isitup 64 over 1 year ago Check whether a website is up or down
jrnl 6,461 11 days ago A simple command line journal application that stores your journal in a plain text file
kanban.bash 893 about 2 years ago commandline asciii kanban board for minimalist productivity bash hackers (csv-based)
ledger 5,320 16 days ago Command line accounting
licen 38 over 9 years ago Generate your license. Yet another lice, but implement with Jinja2 and docopt
md2png 36 almost 6 years ago Convert markdown to PNG image
moviemon 206 almost 8 years ago Everything about your movies within the command line
nomino 562 4 months ago Batch rename utility using regex, sort and map file options
pcalc 543 6 months ago Calculator made for programmers working with multiple number representations, sizes, and overall close to the bits
pockyt 502 6 months ago Read, Manage, and Automate your collection
pushblast 97 almost 9 years ago Get PushBullet notifications when a shell program exits
pushbullet-bash 235 about 1 year ago Bash interface to the PushBullet API
ranger 15,447 about 2 months ago A console file manager with VI key bindings
Reddit Terminal Viewer 4,642 over 1 year ago Browse Reddit from your terminal
SAWS 5,240 6 months ago A Supercharged AWS CLI
taskbook 8,956 about 1 month ago Tasks, boards & notes for the command-line habitat
taskwarrior A command-line TODO list manager
terjira 878 over 1 year ago Command line power tool for Jira
ticker 4,953 about 1 month ago — Terminal stock ticker with live updates and position tracking
vl 27 4 months ago URL link checker on text documents
wego 7,799 20 days ago Weather app for the terminal
whales 382 over 5 years ago A tool to automatically dockerize your applications
whereami 165 over 1 year ago Get your geolocation information from the CLI
wttr.in 24,460 3 months ago The right way to check the weather (curl wttr.in)

Awesome Shell / Games

bash2048 897 5 months ago Bash implementation of 2048 game
minesweeper 63 over 4 years ago Bash implementation of minesweeper
nudoku 323 about 1 month ago ncurses based sudoku game written in C
piu-piu 738 11 days ago Horizontal scroller game in bash with multiplayer mode!
sedtris 532 over 4 years ago Tetris in sed
sed-scripts 45 over 11 years ago Arkanoid and Sokoban written using sed
SHTAP Reusable text adventure engine for Bash 4
tty-solitaire 277 20 days ago Play solitaire in your terminal!

Awesome Shell / Shell Package Management

bash-it 14,242 3 months ago A community Bash framework
basher 1,157 6 months ago A package manager for shell scripts
bashing 79 over 4 years ago Smashing Bash into Pieces
bpkg JavaScript has npm, Ruby has Gems, Python has pip and now Shell has bpkg
dotdrop 1,780 about 2 months ago Save your dotfiles once, deploy them everywhere
dotfiler 239 almost 2 years ago – Shell agnostic git based dotfiles package manager, written in Python
fresh 1,173 about 1 year ago Keep your dotfiles fresh
homeshick 2,081 13 days ago Git dotfile synchronizer written in Bash
shallow-backup 1,222 3 months ago Easily create lightweight documentation of installed packages, dotfiles, and more
shundle 82 over 4 years ago Plugin manager for shell scripts
vcsh 2,193 about 2 months ago Config manager based on Git
yadm Git-based dotfiles manager supporting encryption, alternates, and bootstrapping

Awesome Shell / Shell Script Development

ansi 629 almost 3 years ago ANSI escape codes in pure bash - change text color, position the cursor, much more
assert.sh 487 over 2 years ago Bash unit testing framework
bashew 261 5 months ago bash script creator - from small stand-alone script to complex projects with CI/CD and testing
bashful 603 over 3 years ago A collection of libraries to simplify writing Bash scripts
Bashlets 76 over 3 years ago A modular extensible toolbox for Bash
bashly Bash command line framework and CLI generator
bashmanager 95 over 8 years ago mini bash framework for creating command line tools
bashwithnails 34 about 1 year ago a Bash framework written just for fun with testing, dependency management & packaging
bash-language-server 2,102 11 days ago -based Bash language server
bash-modules 133 over 2 years ago functions for developing with enabled
bats 4,897 19 days ago Bash Automated Testing System
composure 325 almost 2 years ago Compose, document, version and organize your shell functions
crash 64 over 7 years ago Proper error handling, exceptions and try/catch for ZSH
critic.sh 455 about 4 years ago Dead simple testing framework for Bash with coverage reporting
dispatch 89 almost 10 years ago A command line argument parser in 50 lines of portable shell script
esh 209 over 2 years ago A simple templating engine based on shell, implemented in ~290 lines of POSIX shell and awk
Fishtape 347 5 months ago TAP producer and test harness for fish
getoptions 408 about 2 months ago An elegant option parser for shell scripts (sh, bash and all POSIX shells)
getopts.fish 221 over 3 years ago CLI parser for fish
is.sh 162 almost 5 years ago An alternative for builtin test command, it will make your "if" statements pretty
lumberjack 43 about 8 years ago A logging interface for shell scripts
mo 561 3 months ago Mustache templates in pure bash
optparse 158 almost 3 years ago A BASH wrapper for getopts, for simple command line arguments
rerun 457 over 6 years ago A modular shell automation framework to organize your keeper scripts
revolver 143 3 months ago A reusable progress spinner for shell scripts
phases 15 over 6 years ago Minimally invasive bash preprocessor, select sections of your script to run
powscript 157 about 4 years ago bash transpiler written in bash (coffeescript for bash)
semver_bash 249 17 days ago Semantic Versioning in Bash
sh-semver 29 about 3 years ago Semver tool for bash - finds versions matching to specified rules
shellcheck 36,201 about 1 month ago Static analysis tool for shell scripts
shellfire 1,201 almost 9 years ago A repository of namespaced, composable shell (bash, sh and dash) function libraries
shellspec 1,136 about 1 month ago A full-featured BDD unit testing framework for dash, bash, ksh, zsh and all POSIX shells
shfmt 7,189 13 days ago A shell parser, formatter, and interpreter with bash support; includes shfmt
shpec 377 almost 2 years ago A shell testing framework
shutit Automation framework based on bash and pexpect
sub 1,745 about 3 years ago A delicious way to organize programs
ts 59 almost 4 years ago A shell test script
urchin An idiomatic shell testing framework that uses only shell commands
shunit2 1,592 4 months ago A unit test framework for Bash scripts with a flavour of JUnit/PyUnit
rebash 75 over 2 years ago Scripting library/framework. Features: imports, exceptions, doc-tests
zunit 206 about 1 year ago A powerful unit testing framework for ZSH

Guides

Bash Official Reference Manual
Bash Hackers Wiki
Greg Wooledge's (aka "greycat") wiki . Specifically , and
Google's Shell Style Guide
The Linux Documentation Project: Bash Programming - Intro/How-to
The Linux Documentation Project: Advanced Bash Scripting Guide
WikiBooks: Bash Shell Scripting
Use the Unofficial Bash Strict Mode (Unless You Looove Debugging)
The Art of Command Line 153,031 4 months ago
Learn Enough Command Line to Be Dangerous
A guide to learn bash 11,767 2 months ago
Shell Field Guide

Other Awesome Lists / See also

awesome-cli-apps 15,121 19 days ago
awesome-fish 4,168 2 months ago
awesome-zsh 15,302 5 days ago
awesome-bash 7,826 17 days ago
terminals-are-sexy 12,216 3 months ago

Backlinks from these awesome lists: