2023-01-30
Top Popular ZSH Plugins on GitHub (2023)
Explore the most popular Zsh plugins from the 2000+ options on the Awesome Zsh plugins GitHub project. See which ones have the highest number of stars from the Zsh community.
There is a series of articles dedicated to Zsh plugins: 2018, 2019, 2021, 2023. The older articles have description of the selected, interesting tools that are not in this article - so you might also to visit the older editions of the survey.
The collection Awesome Zsh plugins of projects that can be useful for Zsh users grew substantially from the first, 2018 release of my article on Top-popular Zsh plugins - from 800+ to 2100+. In this article, I'm listing top-popular tools that might be interesting for Zsh users and console users in general. As in previous year, I have divided them into four categories:
- Tools - general tools that are popular among console lovers, in most cases not limited to Zsh
- Frameworks - tools for managing Zsh configuration and plugins
- Prompts - projects that help to configure shell prompts
- Python tools - tools that ease work with Python virtual environments
and added two new categories
- Fuzzy finders - tools for filtering lists, options, etc.
- Docker/Containers/Kubernetes - tools that helps to work with container technologies
Shortcuts to categories:
Tools
link | description | stars |
---|---|---|
thefuck | Magnificent app which corrects your previous console command. | 75.5k |
fzf | A command-line fuzzy finder | 49.5k |
bat | A cat(1) clone with wings. | 39.3k |
yt-dlp | A youtube-dl fork with additional features and fixes | 38.5k |
ripgrep | ripgrep recursively searches directories for a regex pattern while respecting your gitignore | 35.5k |
powerlevel10k | A Zsh theme | 34.0k |
tmux | tmux source code | 27.6k |
fd | A simple, fast and user-friendly alternative to 'find' | 26.1k |
zsh-autosuggestions | Fish-like autosuggestions for zsh | 24.9k |
exa | A modern replacement for ls | 20.5k |
asdf | Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more | 16.6k |
zsh-syntax-highlighting | Fish shell like syntax highlighting for Zsh. | 16.2k |
diff-so-fancy | Good-lookin' diffs. Actually… nah… The best-lookin' diffs. | 16.2k |
z | z - jump around | 15.0k |
autojump | A cd command that learns - easily navigate directories from the command line | 14.6k |
powerlevel9k | Powerlevel9k was a tool for building a beautiful and highly functional CLI, customized for you. P9k had a substantial impact on CLI UX, and its legacy is now continued by P10k. | 13.4k |
ranger | A VIM-inspired filemanager for the console | 12.8k |
navi | An interactive cheatsheet tool for the command-line | 12.4k |
shellfirm | Intercept any risky patterns (default or defined by you) and prompt you a small challenge for double verification | 0.7k |
Please find description of selected tools that were not described in previous years.
navi
An interactive cheatsheet tool for the command-line.
navi allows you to browse through cheatsheets (that you may write yourself or download from maintainers) and execute commands. Suggested values for arguments are dynamically displayed in a list.
shellfirm
shellfirm
will intercept any risky patterns and immediately prompt a small challenge that will double verify your action, think of it as a captcha for your terminal.
Frameworks
The top-3 Zsh frameworks in the ranking remains the same: Oh My Zsh, prezto and antigen.
link | description | stars |
---|---|---|
ohmyzsh | A delightful community-driven (with 2,100+ contributors) framework for managing your zsh configuration. | 154.7k |
prezto | The configuration framework for Zsh | 13.2k |
antigen | The plugin manager for zsh. | 7.5k |
zplug | A next-generation plugin manager for zsh | 5.3k |
zimfw | Zim: Modular, customizable, and blazing fast Zsh framework | 3.0k |
antibody | The fastest shell plugin manager. | 1.7k |
zinit | Flexible and fast ZSH plugin manager | 1.6k |
zgen | A lightweight and simple plugin manager for ZSH | 1.4k |
Personally, I use zgen, which works well however, last commits to the repo of this projects are from 2018. There is continuation of the heritage of this plugin manager in the project called: zgenom
Prompts
link | description | stars |
---|---|---|
spaceship-prompt | Minimalistic, powerful and extremely customizable Zsh prompt | 17.9k |
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. | 13.7k |
pure | Pretty, minimal and fast ZSH prompt | 11.9k |
oh-my-posh | A blazing fast cross platform/shell prompt renderer | 9.6k |
bash-git-prompt | An informative and fancy bash prompt for Git users | 6.4k |
powerline-shell | A beautiful and useful prompt for your shell | 6.0k |
liquidprompt | A full-featured & carefully designed adaptive prompt for Bash & Zsh | 4.3k |
oh-my-git | An opinionated git prompt for bash and zsh | 3.6k |
kube-ps1 | Kubernetes prompt info for bash and zsh | 3.0k |
powerline-go | A beautiful and useful low-latency prompt for your shell, written in go | 2.6k |
zsh-git-prompt | Informative git prompt for zsh | 1.6k |
gitstatus | Git status for Bash and Zsh prompt | 1.4k |
geometry | geometry is a minimal, fully customizable and composable zsh prompt theme | 0.9k |
typewritten | A minimal, lightweight, informative zsh prompt theme | 0.8k |
hyperzsh | Hyperminimal zsh prompt | 0.5k |
posh-git-sh | Bash/ZSH version of the posh-git command prompt | 0.4k |
Python tools
Since I work a lot in Python environment - this category will be bit longer than it normally should be.
link | description | stars |
---|---|---|
pyenv | Simple Python version management | 30.4k |
pip-tools | A set of tools to keep your pinned Python dependencies fresh. | 6.6k |
pipx | Install and Run Python Applications in Isolated Environments | 5.9k |
pyenv-virtualenv | a pyenv plugin to manage virtualenv (a.k.a. python-virtualenv) | 5.3k |
pew | A tool to manage multiple virtual environments written in pure python | 1.1k |
virtualfish | Fish shell tool for managing Python virtual environments | 1.0k |
zsh-autoswitch-virtualenv | ZSH plugin to automatically switch python virtualenvs (including pipenv and poetry) as you move between directories | 0.4k |
shtab | Automagic shell tab completion for Python CLI applications | 0.2k |
zpy | Zsh helpers for Python venvs, with pip-tools | 40 |
project | Create node, rust, python or ruby project locally and on github (private or public) | 19 |
virtualz | Virtualfish-alike Python virtualenv wrapper for Zsh | 9 |
zargparse | A tool for generating zsh completion files for python command line tools that use argparse | 9 |
one-key-linux-setup | Scripts which aims to initialize and configure a linux system quickly. Mainly include update, zsh, oh-my-zsh, zsh plugins, python, and so on. Continue to update and welcome issues. | 7 |
zsh-activate-py-environment | ZSH plugin that automagically detects and activates your python environments (poetry, virtualenv, conda) while traversing directories. | 7 |
Fuzzy finders
link | description | stars |
---|---|---|
fzf | A command-line fuzzy finder | 49.5k |
peco | Simplistic interactive filtering tool | 7.2k |
skim | Fuzzy Finder in rust! | 3.8k |
percol | adds flavor of interactive filtering to the traditional pipe concept of UNIX shell | 3.2k |
fzy | A simple, fast fuzzy finder for the terminal | 2.7k |
enhancd | A next-generation cd command with your interactive filter | 2.3k |
fz | Cli shell plugin, the missing fuzzy tab completion feature for the z jump around command. | 0.4k |
Note other, less popular tools in that category: pmy, zeno.zsh, fzf-zsh-completions,fzshell,zsh-fzy,zsh-history-filter,zsh-fzf-pass,zsh-plugin-fd,zsh-fuzzy-wd, qwy
Docker/Containers
Not mentioned in the ranking below but worth checking is k9s (19.4k stars).
link | description | stars |
---|---|---|
kubectx | Faster way to switch between clusters and namespaces in kubectl | 14.6k |
ctop | Top-like interface for container metrics | 13.9k |
zsh-in-docker | Install Zsh, Oh-My-Zsh and plugins inside a Docker container with one line! | 0.6k |
fzf-zsh-completions | Fuzzy completions for fzf and Zsh (git, kubectl, docker, ...) | 90 |
docker-zsh-completion | Zsh completion for docker and docker-compose. | 40 |
docker-compose-zsh-plugin | ZSH plugin that display status of project containers | 45 |
K9s
K9s provides a curses based terminal UI to interact with your Kubernetes clusters. The aim of this project is to make it easier to navigate, observe and manage your applications in the wild. K9s continually watches Kubernetes for changes and offers subsequent commands to interact with observed resources.
Any comments or suggestions? Let me know.
To cite this article:
@article{Saf2023Top, author = {Krystian Safjan}, title = {Top Popular ZSH Plugins on GitHub (2023)}, journal = {Krystian's Safjan Blog}, year = {2023}, }