2023-01-30    Share on: Twitter | Facebook | HackerNews | Reddit

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.

Demo

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. shellfirm example

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. k9s

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},
}