Terminals Are Sexy
A curated list of Terminal frameworks, plugins & resources for CLI lovers.
Check out my blog and follow me on Twitter.
Table of Contents
- Shells
- Terminal Emulation Applications
- Package Managers
- Text Editors
- Tools and Plugins
- Communication
- Other
Shells
Sexy frameworks, plugins and resources for your sexy shell.
Base Shells
- Ammonite-Shell - An object shell with a Scala-like scripting language.
- bash - GNU Project's shell (Bourne Again SHell).
- fish - Smart and user-friendly command line shell.
- PowerShell - Automation and configuration tool/framework that is optimized for dealing with structured data.
- xonsh - Python-ish, BASHwards-looking shell language and command prompt.
- zsh - Powerful shell with scripting language.
ZSH
- alf - Out of this world super fast and configurable framework for zsh.
- ant-zsh - Tiny and lightweight ZSH configuration environment for special customization needs.
- antibody - Faster and simpler antigen written in Golang.
- antigen - Plugin manager for zsh, inspired by oh-my-zsh and vundle.
- dotzsh - Community driven framework for zsh.
- liquidprompt - Full-featured & carefully designed adaptive prompt for Bash & Zsh.
- oh-my-zsh - Delightful community-driven framework for managing your zsh configuration.
- powerlevel9k - Super flexible awesome powerline ZSH theme.
- prezto - Configuration framework for Zsh.
- pumice - Lightweight plugin manager for zsh.
- pure - Pretty, minimal and fast ZSH prompt.
- slimzsh - Small, usable configuration for ZSH.
- zeesh - Cross-platform Zsh framework.
- zgen - Lightweight and simple plugin manager for ZSH.
- zilsh - Zsh config system that aims to appeal more to power-users and follow the simplistic approach of vim-pathogen.
- zim - Zsh configuration framework with blazing speed and modular extensions.
- zinit - Flexible Zsh plugin manager with clean fpath, reports, completion management, turbo mode, services.
- zoppo - Crippled configuration framework for Zsh.
- zplug - Next-generation plugin manager for zsh.
- zpm - Plugin manager for zsh similar to vim-plug.
- zsh-autosuggestions - Fish-like autosuggestions for zsh.
- zsh-pony - Covers customizing ZSH without a framework.
- zsh-quickstart-kit - Simple zsh quickstart for using zsh and zgen.
- zsh-syntax-highlighting - Fish shell like syntax highlighting for Zsh.
- zshdb - ZSH debugger.
- ztanesh - Aims to improve your UNIX command line experience and productivity with the the configuration provided by the ztanesh project.
- zulu - Total environment manager for ZSH 5+.
- zunit - Powerful unit testing framework for ZSH.
Bash
- aliases - Contextual, dynamic, organized aliases for the bash shell.
- bash-it - Collection of community Bash commands and scripts.
- bash-powerline - Powerline-style Bash prompt in pure Bash script.
- bash-sensible - Attempt at saner Bash defaults.
- bashtrap - Quick way to spruce up OSX terminal.
- hstr - Bash History Suggest Box.
- liquidprompt - Full-featured & carefully designed adaptive prompt for Bash & Zsh.
Git
- bash-git-prompt - Informative and fancy Bash prompt for Git users.
- git-extra-commands - Collection of useful extra commands for git
- git-prompt - Bash prompt with Git, SVN and HG modules.
- git-radar - Heads up display for git
- git-sh - Customized Bash environment suitable for Git work.
- gittify - Colorful Bash prompt + customized Git aliases.
- oh-my-git - Opinionated git prompt for bash and zsh.
- sexy-bash-prompt - Bash prompt with colors, Git statuses, and Git branches.
Fish
- Fisher - Package manager for the fish shell.
- oh-my-fish - The Fishshell Framework.
Terminal Emulation Applications
Sexy 3rd party terminal emulation applications.
- Alacritty - Cross-platform, GPU-accelerated terminal emulator.
- Cmder - Lovely console emulator package for Windows.
- ConEmu - Customizable Windows terminal with tabs, splits, quake-style and more.
- ConsoleZ - Windows console window enhancement. It is a fork of Console project.
- FluentTerminal - A Terminal Emulator based on UWP and web technologies.
- GNOME Terminal - Terminal emulator for GNOME.
- GNU Screen - Full-screen window manager that multiplexes a physical terminal between several processes.
- Go2Shell - Opens a terminal window to the current directory in Finder.
- Hyper - Terminal built on web technologies.
- iTerm2 - Terminal emulator for macOS that does amazing things.
- KiTTY - Fork from version 0.70 of PuTTY, the best telnet / SSH client in the world.
- Konsole - Terminal emulator for the K Desktop Environment.
- MacTerm - Powerful replacement for macOS Terminal.
- Mosh - Remote terminal application that allows roaming and supports intermittent connectivity.
- PuTTY - SSH and telnet client, developed originally by Simon Tatham for the Windows platform.
- Terminator - Multiple GNOME terminals in one window.
- Terminology - The best terminal emulator based on the Enlightenment Foundation Libraries.
- Terminus - Cross-platform terminal for a more modern age, based on web technologies.
- Termite - Keyboard-centric terminal, aimed at use within a tiling window manager.
- Tilda - Gtk based drop down terminal for Linux and Unix.
- Tilix - Advanced GTK3 tiling terminal emulator that follows the Gnome Human Interface Guidelines.
- Xfce Terminal - Modern terminal emulator primarily for the Xfce desktop environment.
- xterm - Terminal emulator for the X Window System.
- ZOC - SSH/Telnet Client and Terminal Emulator for macOS and Windows.
Package Managers
Sexy package managers for your macOS, Linux & Windows CLIs.
Universal
- asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
- basher - Package manager for shell scripts.
- bpkg - JavaScript has npm, Ruby has Gems, Python has pip and now Shell has bpkg.
- composer - Composer is a package manager for PHP.
- guix - Functional package manager for installed software packages and versions.
- nix - Powerful package manager for Linux and other Unix systems that makes package management reliable and reproducible.
- npmjs - Package manager for JavaScript.
- pip - Package management system used to install and manage software packages written in Python.
- rubygems - The Ruby communityโs gem hosting service.
- yarn - New package and dependency manager for javascript.
macOS
- fink - Wants to bring the full world of Unix Open Source software to Darwin and macOS.
- homebrew - Missing package manager for macOS.
- macports - Package manager that simplifies the installation of software on the macOS and Darwin operating systems.
- mas - Mac App Store command line interface.
Linux
- linuxbrew - The Homebrew package manager for Linux.
- pkgin - Aimed at being an apt / yum like tool for managing pkgsrc binary packages.
ChromeOS
- chromebrew - Package manager for Chrome OS.
Windows
- chocolatey - Package manager for Windows.
- cygwin - Linux-like environment for Windows making it possible to port software running on POSIX systems to Windows.
- ninite - Install and Update All Your Programs at Once.
- oneget - PackageManagement (aka OneGet) is a package manager for Windows.
- ruckzuck - Software Package Manager for Windows, a quick way to install and update Software.
- scoop - Package manager for Windows.
- wpkg - Automated software deployment, upgrade and removal program for Windows.
Text Editors
Sexy text editors for your Command Line Interface.
- emacs - Cross-platform text-editor that has both command-line and graphical user interface.
- spacemacs - Community-driven emacs distribution.
- jed - Freely available text editor for Unix, VMS, MSDOS, OS/2, BeOS, QNX, and win9X/NT platforms.
- kakoune - Modal editor with multiple selections and orthogonal design.
- micro - Modern and intuitive terminal-based text editor.
- nano - Text editor for Unix-like computing systems or operating environments using a command line interface.
- slap - Sublime-like terminal-based text editor.
- vim - Extensively configurable, cross-platform and highly efficient text editor.
- vis - Highly efficient text editor.
Tools and Plugins
Sexy Applications for your Command Line Interface.
- ack3 - Greplike tool, optimized for programmers.
- add-gitignore - An interactive CLI that generates a .gitignore for your project based on your needs.
- asciinema - Terminal session recorder.
- autojump - cd command that learns
- bcal - Storage conversion and expression calculator.
- buku - command-line bookmark manager.
- byobu - Byobu is an open source text-based window manager and terminal multiplexer.
- cointop - The fastest and most interactive terminal based UI application for tracking cryptocurrencies.
- colorls - Beautify the terminal's
ls
command, with color and font-awesome icons. - ddgr - DuckDuckGo from the terminal.
- df-show - Interactive directory and file browser with a similar feel to the
ls
command. - dockly - Docker console UI and Dashboard for quickly managing and inspecting Containers and Services.
- dry - Docker manager for the terminal.
- exa - Replacement for 'ls' written in Rust.
- fselect - 'find' replacement with SQL-like syntax.
- fx - Command-line JSON viewer.
- fzf - Command-line fuzzy finder.
- gcalcli - Google Calendar command line interface.
- getnews.tech - Checking the latest news headlines from various news outlets on the web.
- glances - top/htop alternative.
- googler - Search Google from your terminal.
- haxor-news - Browse Hacker News like a haxor.
- homebrew-cask - CLI workflow for the administration of macOS applications distributed as binaries.
- howdoi - Instant code answers and examples from the command line
- htop - Cool looking and interactive process viewer 'replacement' for the top command.
- hub - Command-line wrapper for git that makes working with GitHub easy.
- imgp - Multi-core batch image resizer and rotator.
- jaymock-cli - Mock an API and generate fake JSON test data, right from the terminal.
- jq.node - Command-line JSON/string processor, JavaScript and Lodash in your shell.
- jrnl - Simple command line journal application that stores your journal in a plain text file.
- k - Directory listings for zsh with git features.
- kubebox - Terminal console for Kubernetes.
- lexis - word counting made easy. Retrieve the number of words in a string or stdin.
- lf - Terminal file manager.
- lolcat - Rainbows and unicorns!
- lunchy - Friendly wrapper for launchctl.
- mps-youtube - Terminal based YouTube player and downloader
- navi - An interactive cheatsheet tool for the command-line.
- neofetch - Fetches system/theme information in terminal for Linux desktop screenshots. Alternative to screenfetch.
- nnn - Tiny, lightning fast, feature-packed file manager.
- ranger - Console file manager with vi key bindings.
- rebound - Command-line debugger that instantly fetches Stack Overflow results when you get a compiler error.
- reddit terminal viewer - Browse Reddit from your terminal.
- ripgrep - Code-searching tool like ack and the_silver_searcher, but faster.
- screenfetch - Fetches system/theme information in terminal for Linux desktop screenshots.
- shell2http - HTTP-server to execute shell commands. Designed for development, prototyping or remote control.
- streamlink - CLI for extracting streams from various websites to a video player of your choosing.
- taskell - Command-line Trello-like kanban-board/TODO lists.
- taskwarrior - Command-line TODO list manager.
- the_silver_searcher - Code-searching tool similar to ack, but faster.
- tig - Text mode interface for git.
- tiv - Text mode terminal image viewer.
- tldr - Simplified and community-driven man pages.
- tmux - Terminal multiplexer.
- tmuxinator - Manage complex tmux sessions easily.
- transfer.sh - Quickly upload and share files from your shell.
- tre - Improved
tree
command that knows git, creates shell alias for quick opening, and more! - vifm - Console file manager with vi key bindings and some ideas from mutt.
- wal - generate and change colorschemes on the fly.
- whereami - Get your geolocation information from the CLI.
- wttr.in - The right way to check the weather.
- yadm - Seamless git-based management of your dotfiles.
- youtube-dl - download videos from YouTube
- z - Tool to jump to folders based on history matching a given regex
- z.lua - New cd command that helps you navigate faster by learning your habits.
- zoxide - cd anywhere without typing in long paths.
Communication
Sexy Tools for communicating through the Command Line Interface.
- bitchx - Feature-rich and highly configurable, terminal based IRC client based on ircII.
- centerim - Terminal based, multi-protocol Instant Messaging client with support for IRC.
- epic - IRC client that has been under active development for 20+ years in 5 generations.
- go-jira - Simple jira command line client in Go.
- irssi - Self proclaimed client of the future and my favorite IRC client.
- slack-term - Slack client for your terminal.
- Slackadaisical - Simple Slack client for the CLI.
- weechat - Fast, light and extensible chat client.
Other
Community
Join the CLI lover community.
- /r/commandline - This is for anything regarding the command line, in any operating system.
- /r/osxterminal - Tips for using terminal.app in macOS.
- /r/zsh/ - Everything on zsh.
- /r/unixporn/ - Everything on unix.
- #bash - Bash IRC channel on freenode.
- Stack Overflow - Terminal tagged questions.
Other Sexy Lists
Here are some more sexy lists.
Awesome
- awesome-devenv - Curated list of delightful Bash scripts and resources.
- awesome-emacs - Community driven list of useful Emacs packages, libraries and others.
- awesome-sysadmin - Curated list of amazingly awesome open source sysadmin resources.
- awesome-zsh-plugins - Collection of ZSH frameworks, plugins & themes inspired by the various awesome list collections out there.
Misc
- bash-guide - Guide to learn bash.
- the-art-of-command-line - Master the command line, in one page.
Contributing
Your contributions are always welcome! Please take a look at our contribution guidelines and code of conduct first.
Pull requests might be kept open if it hasn't been decided whether additions are sexy enough.