diff --git a/README.md b/README.md index 80995a7..38bf727 100644 --- a/README.md +++ b/README.md @@ -2,114 +2,20 @@ A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php. This awesome collection is also available on [Unix-Shell.ZEEF.com](https://unix-shell.zeef.com/caleb.xu). - [Awesome Bash](#awesome-bash) - - [Downloading and Serving](#downloading-and-serving) + - [Command-Line Productivity](#command-line-productivity) - [Customization](#customization) - - [Shell Package Management](#shell-package-management) - - [Shell Script Development](#shell-script-development) + - [For Developers](#for-developers) + - [System Utilities](#system-utilities) + - [Downloading and Serving](#downloading-and-serving) - [Multimedia and File Formats](#multimedia-and-file-formats) - [Applications](#applications) - [Games](#games) - - [Command-Line Productivity](#command-line-productivity) - - [For Developers](#for-developers) - - [System Utilities](#system-utilities) + - [Shell Package Management](#shell-package-management) + - [Shell Script Development](#shell-script-development) - [Zsh](#zsh) - [Guides](#guides) - [Other Awesome Lists](#other-awesome-lists) -## Downloading and Serving - -*Self-hosted, lightweight servers and networking tools written in shell scripts.* - -* [aria2](https://github.com/tatsuhiro-t/aria2) - 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](https://github.com/jneen/balls) - Bash on Balls -* [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" -* [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 -* [httpie](https://github.com/jakubroztocil/httpie) - HTTPie is a command line HTTP client, a user-friendly cURL replacement -* [ngincat](https://github.com/jaburns/ngincat) - Tiny Bash HTTP server using netcat -* [resty](https://github.com/micha/resty) - Little command line REST client that you can use in pipelines -* [youtube-dl](https://github.com/rg3/youtube-dl) - Small command-line program to download videos from YouTube.com and other video sites - -## 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 -* [flatui-terminal-theme](https://dribbble.com/shots/1021755-Flat-UI-Terminal-Theme) - Nicer colors for terminal -* [git-prompt](https://github.com/lvv/git-prompt) - Bash prompt with Git, SVN and HG modules -* [gittify](https://github.com/momeni/gittify) - A colorful Bash prompt + customized Git aliases -* [Gogh - Color Scheme](https://github.com/Mayccoll/Elementary-OS-Terminal-Colors) - Color Scheme for Gnome Terminal -* [liquidprompt](https://github.com/nojhan/liquidprompt) - A full-featured & carefully designed adaptive prompt for Bash & Zsh -* [mysql-colorize](https://github.com/horosgrisa/mysql-colorize.bash) - Colorization for mysql comand-line client -* [sexy-bash-prompt](https://github.com/twolfson/sexy-bash-prompt) - Bash prompt with colors, Git statuses, and Git branches - -## Shell Package Management - -*Tools for managing multiple shell configurations.* - -* [antigen-hs](https://github.com/Tarrasch/antigen-hs) - A replacement for antigen optimized for a low overhead when starting up the shell. -* [bash-it](https://github.com/revans/bash-it) - A community Bash framework -* [basher](https://github.com/basherpm/basher) - A package manager for shell scripts -* [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 -* [vcsh](https://github.com/RichiH/vcsh) - Config manager based on Git -* [zgen](https://github.com/tarjoilija/zgen) - A lightweight plugin manager for ZSH inspired by antigen, but optimized for speed when starting a new shell. Can load oh-my-zsh compatible plugins and themes. - -## Shell Script Development - -*Tools for writing, improving, or organizing Bash or other shell scripts* - -* [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. -* [rerun](https://github.com/rerun/rerun) - A modular shell automation framework to organize your keeper scripts -* [semver_bash](https://github.com/cloudflare/semver_bash) - Semantic Versioning in Bash -* [shellcheck](https://github.com/koalaman/shellcheck) - Static analysis tool for shell scripts -* [shpec](https://github.com/rylnd/shpec) - A shell testing framework -* [sub](https://github.com/basecamp/sub) - A delicious way to organize programs -* [ts](https://github.com/thinkerbot/ts) - A shell test script -* [shunit2](https://code.google.com/p/shunit2/) - A unit test framework for Bash scripts with a flavour of JUnit/PyUnit. - -## Multimedia and File Formats - -*Tools for handling video and audio files.* - -* [adb-export](https://github.com/sromku/adb-export) - Export Android content providers to CSV format -* [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 -* [Beets](https://github.com/sampsyo/beets) - Music library manager and MusicBrainz tagger -* [image-scraper](https://github.com/sananth12/ImageScraper) - A cool command line image scraper with a lot of features. -* [jq](https://github.com/stedolan/jq) - Sed for json data. You can use it to slice and filter and map and transform structured data -* [PiCAST](https://github.com/lanceseidman/PiCAST) - PiCAST turns your $35 Raspberry Pi in to a Chromecast like Device -* [sejda](https://github.com/torakiki/sejda/) - Command line manipulation of PDF documents (split, merge, rotate, convert to jpg, extract text, etc) - -## Applications - -*Command line-based applications or command line access to existing services.* - -* [ansiweather](https://github.com/fcambus/ansiweather) - Weather in your terminal, with ANSI colors and Unicode symbols -* [bashblog](https://github.com/cfenollosa/bashblog) - A Bash script that handles blog posting -* [geeknote](https://github.com/VitaliyRodnenko/geeknote) - Command line evernote client -* [jrnl](https://github.com/maebert/jrnl) - A simple command line journal application that stores your journal in a plain text file -* [ledger](https://github.com/ledger/ledger) - Command line accounting -* [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 -* [transfer.sh](https://transfer.sh/) — Quickly upload and share files from your shell -* [wego](https://github.com/schachmat/wego) - Weather app for the terminal - -## 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 -* [sed-scripts](https://github.com/aureliojargas/sed-scripts) - Arkanoid and Sokoban written using sed ## Command-Line Productivity @@ -136,9 +42,24 @@ A curated list of awesome command-line frameworks, toolkits, guides and gizmos. * [tmux](http://tmux.sourceforge.net/) - Amazing terminal multiplexer * [v](https://github.com/rupa/v) - z for vim. * [wemux](https://github.com/zolrath/wemux) - Multi-User Tmux Made Easy -* [xmlstarlet](http://xmlstar.sourceforge.net/) - Old but powerful tool for command-line XML formatting, filtering, and manipulation. * [z](https://github.com/rupa/z) - z is the new j, yo +## 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 +* [flatui-terminal-theme](https://dribbble.com/shots/1021755-Flat-UI-Terminal-Theme) - Nicer colors for terminal +* [git-prompt](https://github.com/lvv/git-prompt) - Bash prompt with Git, SVN and HG modules +* [gittify](https://github.com/momeni/gittify) - A colorful Bash prompt + customized Git aliases +* [Gogh - Color Scheme](https://github.com/Mayccoll/Elementary-OS-Terminal-Colors) - Color Scheme for Gnome Terminal +* [liquidprompt](https://github.com/nojhan/liquidprompt) - A full-featured & carefully designed adaptive prompt for Bash & Zsh +* [mysql-colorize](https://github.com/horosgrisa/mysql-colorize.bash) - Colorization for mysql comand-line client +* [sexy-bash-prompt](https://github.com/twolfson/sexy-bash-prompt) - Bash prompt with colors, Git statuses, and Git branches + ## For Developers *Command-line development, version control, and deployment.* @@ -161,6 +82,85 @@ A curated list of awesome command-line frameworks, toolkits, guides and gizmos. * [ncdu](http://dev.yorhel.nl/ncdu) - NCurses Disk Usage * [quick-secure](https://github.com/marshyski/quick-secure) - Quickly secure and harden UNIX/Linux systems +## Downloading and Serving + +*Self-hosted, lightweight servers and networking tools written in shell scripts.* + +* [aria2](https://github.com/tatsuhiro-t/aria2) - 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](https://github.com/jneen/balls) - Bash on Balls +* [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" +* [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 +* [httpie](https://github.com/jakubroztocil/httpie) - HTTPie is a command line HTTP client, a user-friendly cURL replacement +* [ngincat](https://github.com/jaburns/ngincat) - Tiny Bash HTTP server using netcat +* [resty](https://github.com/micha/resty) - Little command line REST client that you can use in pipelines +* [youtube-dl](https://github.com/rg3/youtube-dl) - Small command-line program to download videos from YouTube.com and other video sites + +## Multimedia and File Formats + +*Tools for handling video and audio files.* + +* [adb-export](https://github.com/sromku/adb-export) - Export Android content providers to CSV format +* [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 +* [Beets](https://github.com/sampsyo/beets) - Music library manager and MusicBrainz tagger +* [image-scraper](https://github.com/sananth12/ImageScraper) - A cool command line image scraper with a lot of features. +* [jq](https://github.com/stedolan/jq) - Sed for json data. You can use it to slice and filter and map and transform structured data +* [PiCAST](https://github.com/lanceseidman/PiCAST) - PiCAST turns your $35 Raspberry Pi in to a Chromecast like Device +* [sejda](https://github.com/torakiki/sejda/) - Command line manipulation of PDF documents (split, merge, rotate, convert to jpg, extract text, etc) +* [xmlstarlet](http://xmlstar.sourceforge.net/) - Old but powerful tool for command-line XML formatting, filtering, and manipulation. + +## Applications + +*Command line-based applications or command line access to existing services.* + +* [ansiweather](https://github.com/fcambus/ansiweather) - Weather in your terminal, with ANSI colors and Unicode symbols +* [bashblog](https://github.com/cfenollosa/bashblog) - A Bash script that handles blog posting +* [geeknote](https://github.com/VitaliyRodnenko/geeknote) - Command line evernote client +* [jrnl](https://github.com/maebert/jrnl) - A simple command line journal application that stores your journal in a plain text file +* [ledger](https://github.com/ledger/ledger) - Command line accounting +* [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 +* [transfer.sh](https://transfer.sh/) — Quickly upload and share files from your shell +* [wego](https://github.com/schachmat/wego) - Weather app for the terminal + +## 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 +* [sed-scripts](https://github.com/aureliojargas/sed-scripts) - Arkanoid and Sokoban written using sed + +## Shell Package Management + +*Tools for managing multiple shell configurations.* + +* [antigen-hs](https://github.com/Tarrasch/antigen-hs) - A replacement for antigen optimized for a low overhead when starting up the shell. +* [bash-it](https://github.com/revans/bash-it) - A community Bash framework +* [basher](https://github.com/basherpm/basher) - A package manager for shell scripts +* [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 +* [vcsh](https://github.com/RichiH/vcsh) - Config manager based on Git + +## Shell Script Development + +*Tools for writing, improving, or organizing Bash or other shell scripts* + +* [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. +* [rerun](https://github.com/rerun/rerun) - A modular shell automation framework to organize your keeper scripts +* [semver_bash](https://github.com/cloudflare/semver_bash) - Semantic Versioning in Bash +* [shellcheck](https://github.com/koalaman/shellcheck) - Static analysis tool for shell scripts +* [shpec](https://github.com/rylnd/shpec) - A shell testing framework +* [sub](https://github.com/basecamp/sub) - A delicious way to organize programs +* [ts](https://github.com/thinkerbot/ts) - A shell test script +* [shunit2](https://code.google.com/p/shunit2/) - A unit test framework for Bash scripts with a flavour of JUnit/PyUnit. + ## Zsh *Tools and customizations specifically for Zsh.* @@ -173,6 +173,7 @@ A curated list of awesome command-line frameworks, toolkits, guides and gizmos. * [powerline-zsh](https://github.com/carlcarl/powerline-zsh) - Powerline for Zsh * [prezto](https://github.com/sorin-ionescu/prezto) - The configuration framework for Zsh * [pure](https://github.com/sindresorhus/pure) - Pretty, minimal and fast Zsh prompt +* [zgen](https://github.com/tarjoilija/zgen) - A lightweight plugin manager for Zsh inspired by antigen, but optimized for speed when starting a new shell. Can load oh-my-zsh compatible plugins and themes. * [zsh-autosuggestions](https://github.com/tarruda/zsh-autosuggestions) - Fish-like autosuggestions for Zsh * [zsh-dwim](https://github.com/oknowton/zsh-dwim) - Zsh do what I mean. * [zsh-git-prompt](https://github.com/olivierverdier/zsh-git-prompt) - Informative Git prompt for Zsh