# Awesome Shell A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php. - [Awesome Bash](#awesome-bash) - [Networking and Servers](#networking-and-servers) - [Customization](#customization) - [Package Management and Frameworks](#package-management-and-frameworks) - [Writing and Testing Scripts](#writing-and-testing-scripts) - [Multimedia](#multimedia) - [Games](#games) - [Utilities and Tools](#utilities-and-tools) - [Guides](#guides) - [Other Awesome Lists](#other-awesome-lists) - [Contributing](#contributing) - To-do. ## Networking and Servers *Self-hosted, lightweight servers and networking tools written in shell scripts.* * [balls](https://github.com/jneen/balls) - Bash on Balls * [bashblog](https://github.com/cfenollosa/bashblog) - A Bash script that handles blog posting * [bashttpd](https://github.com/avleen/bashttpd) - A web server written in bash * [bitpocket](https://github.com/sickill/bitpocket) - "DIY Dropbox" or "2-way directory (r)sync with proper deletion" * [dokku](https://github.com/progrium/dokku) - Docker powered mini-Heroku in around 100 lines of Bash * [Dropbox-Uploader](https://github.com/andreafabrizi/Dropbox-Uploader) - Dropbox Uploader is a BASH script which can be used to upload, download, list or delete files from Dropbox * [ngincat](https://github.com/jaburns/ngincat) - Tiny bash HTTP server using netcat * [pushblast](https://github.com/alebcay/pushblast) - Get PushBullet notifications when a shell program exits * [pushbullet-bash](https://github.com/Red5d/pushbullet-bash) - Bash interface to the PushBullet API * [resty](https://github.com/micha/resty) - Little command line REST client that you can use in pipelines ## Customization *Custom prompts, color themes, etc.* * [base16-shell](https://github.com/chriskempson/base16-shell) - Base16 for Shells * [bash-git-prompt](https://github.com/magicmonty/bash-git-prompt) - An informative and fancy bash prompt for Git users * [bash-powerline](https://github.com/riobard/bash-powerline) - Powerline-style Bash prompt in pure Bash script * [bashstrap](https://github.com/barryclark/bashstrap) - A quick way to spruce up OSX terminal * [liquidprompt](https://github.com/nojhan/liquidprompt) - A full-featured & carefully designed adaptive prompt for Bash & Zsh * [powerline-zsh](https://github.com/carlcarl/powerline-zsh) - Powerline for Zsh * [pure](https://github.com/sindresorhus/pure) - Pretty, minimal and fast ZSH prompt * [sexy-bash-prompt](https://github.com/twolfson/sexy-bash-prompt) - Bash prompt with colors, git statuses, and git branches * [zsh-git-prompt](https://github.com/olivierverdier/zsh-git-prompt) - Informative git prompt for zsh * [zsh-prompt-powerline](https://github.com/Valodim/zsh-prompt-powerline) - A ZSH prompt based on the powerline font from the popular vim plugin ## Package Management and Frameworks *Tools for managing multiple shell configurations.* * [antigen](https://github.com/zsh-users/antigen) - A plugin manager for zsh, inspired by oh-my-zsh and vundle * [bash-it](https://github.com/revans/bash-it) - A community bash framework * [bpkg](http://www.bpkg.io/) - JavaScript has npm, Ruby has Gems, Python has pip and now Shell has bpkg * [fresh](https://github.com/freshshell/fresh) - Keep your dotfiles fresh * [homeshick](https://github.com/andsens/homeshick) - git dotfile synchronizer written in bash * [oh-my-fish](https://github.com/bpinto/oh-my-fish) - Framework for managing your fish shell configuration inspired by Oh My ZSH * [oh-my-zsh](https://github.com/robbyrussell/oh-my-zsh) - A community-driven framework for managing your zsh configuration * [prezto](https://github.com/sorin-ionescu/prezto) - The configuration framework for Zsh * [vcsh](https://github.com/RichiH/vcsh) - config manager based on Git ## Writing and Testing Scripts *Boilerplate-like templates and systems to jump-start whatever script you are writing.* * [bashful](https://github.com/jmcantrell/bashful) - A collection of libraries to simplify writing bash scripts * [bats](https://github.com/sstephenson/bats) - Bash Automated Testing System * [composure](https://github.com/erichs/composure) - Compose, document, version and organize your shell functions * [dispatch](https://github.com/Mosai/workshop/blob/master/doc/dispatch.md) - A command line argument parser in 50 lines of portable shell script. * [sub](https://github.com/basecamp/sub) - a delicious way to organize programs ## Multimedia *Tools for handling video and audio files.* * [PiCAST](https://github.com/lanceseidman/PiCAST) - PiCAST turns your $35 Raspberry Pi in to a Chromecast like Device ## Games *All work and no play is a cruddy way to spend your day.* * [bash2048](https://github.com/mydzor/bash2048) - Bash implementation of 2048 game * [minesweeper](https://github.com/feherke/Bash-script/blob/master/minesweeper/minesweeper.sh) - Bash implementation of minesweeper * [sedtris](https://github.com/uuner/sedtris) - Tetris in sed * [arkanoid and sokoban](https://github.com/aureliojargas/sed-scripts) - Arkanoid and Sokoban written using sed ## Utilities and Tools *Other various neat gizmos to make your terminal experience more enjoyable.* * [Android-Kitchen](https://github.com/dsixda/Android-Kitchen) - A text-based kitchen for Android ROM customization. Uses shell scripts and works with Cygwin/OS X/Linux * [ansiweather](https://github.com/fcambus/ansiweather) - Weather in your terminal, with ANSI colors and Unicode symbols * [autoenv](https://github.com/kennethreitz/autoenv) - Directory-based environments * [autojump](https://github.com/joelthelion/autojump) - A cd command that learns - easily navigate directories from the command line * [bash-slugify](https://github.com/benlinton/bash-slugify) - Command that converts filenames and directories to a web friendly format * [bashmarks](https://github.com/huyng/bashmarks) - Directory bookmarks for the shell * [cv](https://github.com/Xfennec/cv) - Linux tool to show progress for cp, rm, dd, ... * [fasd](https://github.com/clvv/fasd) - Command-line productivity booster, offers quick access to files and directories * [git-extras](https://github.com/visionmedia/git-extras) - GIT utilities -- repo summary, repl, changelog population, author commit percentages and more * [git-sh](https://github.com/rtomayko/git-sh) - A customized bash environment suitable for git work * [hr](https://github.com/LuRsT/hr) - `
` for your terminal * [hstr](https://github.com/dvorka/hstr) - BASH History Suggest Box * [jrnl](https://github.com/maebert/jrnl) - A simple command line journal application that stores your journal in a plain text file * [semver_bash](https://github.com/cloudflare/semver_bash) - Semantic Versioning in Bash * [shellcheck](https://github.com/koalaman/shellcheck) - Static analysis tool for shell scripts * [slap](https://github.com/slap-editor/slap) - Sublime-like terminal-based text editor * [spark](https://github.com/holman/spark) - ▁▂▃▅▂▇ in your shell * [spot](https://github.com/guille/spot) - Tiny file search utility * [wemux](https://github.com/zolrath/wemux) - Multi-User Tmux Made Easy * [z](https://github.com/rupa/z) - z is the new j, yo * [zsh-notify](https://github.com/marzocchi/zsh-notify) - Desktop notifications for long running commands in zsh * [zshmarks](https://github.com/jocelynmallon/zshmarks) - A port of Bashmarks (simple bookmarking plugin by Todd Werth) for oh-my-zsh # Guides * [Greg Wooledge's (aka "greycat") wiki](http://mywiki.wooledge.org). Specifically [Bash Guide](http://mywiki.wooledge.org/BashGuide), [Bash FAQ](http://mywiki.wooledge.org/BashFAQ) and [Bash Pitfalls](http://mywiki.wooledge.org/BashPitfalls) * [Bash Hackers Wiki] (http://wiki.bash-hackers.org/) * [The Linux Documentation Project: Bash Programming - Intro/How-to](http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html#toc) * [The Linux Documentation Project: Advanced Bash Scripting Guide](http://www.tldp.org/LDP/abs/html/) * [WikiBooks: Bash Shell Scripting](http://en.wikibooks.org/wiki/Bash_Shell_Scripting) # Other Awesome Lists Other amazingly awesome lists can be found in [awesome-awesome](https://github.com/emijrp/awesome-awesome) and [awesome-awesomeness](https://github.com/bayandin/awesome-awesomeness).