
Pure
A minimal, fast zsh prompt that shows git status and command timing.
- Stars
- 14.5k
- Forks
- 1k
- Licence
- MIT
- Language
- Shell
- Last update
- 30 days ago
- Type
- Dev tool
What it is
Pure is a prompt for the zsh shell, the command line used on many Macs and Linux systems. It shows your current folder, your git branch with a marker when there are uncommitted changes, and arrows when local commits are not yet pushed or pulled. It is designed to look clean and stay out of your way.
- See the git branch and whether the working tree is dirty while browsing a repo
- Notice when your branch is ahead of or behind its remote through the up and down arrows
- Spot a failed previous command from the red prompt character
- Show the Python virtualenv or Conda environment name in the prompt
- Display the current Node.js major version in projects that have a package.json, after opting in
Great for
- Developers who use zsh and want a simple, readable prompt
- People who work with git branches and want to see status at a glance
- Users who want a prompt they can extend with their own segments
- Anyone who prefers a minimal look over a heavily decorated prompt
Not ideal for
- People who do not use zsh (the README describes a zsh-only prompt), since it will not work in bash or fish
- Users who want many built-in segments by default, because several extras such as Node.js version display are off unless enabled
- Users on very old zsh versions, since the README recommends zsh 5.2+ and says older versions are not recommended
How to get it
- 1
Install with a package manager
You'll need: Git 2.15.2+ · ZSH 5.2+ · npm (for the npm install route)
Install with npm
npm install --global pure-promptInstall with Homebrew
brew install pure - 2
Run it
- Install Pure with npm or Homebrew, or clone the repository manually
- Add the fpath line to your .zshrc if the prompt is not listed by prompt -l
- In .zshrc, run: autoload -U promptinit; promptinit
- Run: prompt pure, then open a new shell to see it
- 3
Get the most out of it
- Enable detailed dirty indicators with zstyle :prompt:pure:git:dirty detailed yes to distinguish unstaged, staged and untracked changes
- Turn on stash display with zstyle :prompt:pure:git:stash show yes
- Enable Node.js version display with zstyle :prompt:pure:environment:node_version show yes in Node projects
- Use prompt_pure_precustom to add custom prefix or suffix text, caching slow commands in a precmd hook
- Adjust the threshold for showing command run time with the PURE_CMD_MAX_EXEC_TIME variable
Downloads
Strengths
- Installs and enables with a few lines and has a documented npm and Homebrew route
- Git status checks run asynchronously and many options are configurable via environment variables and zstyle
- The README offers a documented hook (prompt_pure_precustom) for adding custom content
Trade-offs
- Configuration is done through zstyle and environment variables, which takes some reading of the README to learn
- Some useful features such as detailed dirty indicators and stash display are opt-in rather than on by default
- The README does not describe compatibility beyond the listed minimum versions of Git and zsh
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| pure (this) | 14.5k | Dev tool | beginner | 30 days ago | Developers who use zsh and want a simple, readable prompt |
| powerlevel10k | 55.3k | Dev tool | beginner | 2 months ago | Zsh users who want a informative prompt that does not slow down typing |
| ohmyzsh | 190k | Dev tool | beginner | 4 days ago | People who already use zsh and want a ready-made configuration without writing it from scratch |
| spaceship-prompt | 20.6k | Dev tool | beginner | 10 days ago | Zsh users who want useful information in their prompt without much setup |
| prezto | 14.6k | Framework | beginner | 7 months ago | People who use Zsh and want a ready-made starting configuration |
| oh-my-posh | 23.7k | Dev tool | intermediate | 4 days ago | Developers who want their terminal prompt to show extra context |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.