Skip to content

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
Step-by-step guide: how to use PureInstall, first run, examples, tips and FAQs

How to get it

  1. 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-prompt

    Install with Homebrew

    brew install pure
  2. 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. 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

ProjectStarsTypeLevelUpdatedBest for
pure (this)14.5kDev toolbeginner30 days agoDevelopers who use zsh and want a simple, readable prompt
powerlevel10k55.3kDev toolbeginner2 months agoZsh users who want a informative prompt that does not slow down typing
ohmyzsh190kDev toolbeginner4 days agoPeople who already use zsh and want a ready-made configuration without writing it from scratch
spaceship-prompt20.6kDev toolbeginner10 days agoZsh users who want useful information in their prompt without much setup
prezto14.6kFrameworkbeginner7 months agoPeople who use Zsh and want a ready-made starting configuration
oh-my-posh23.7kDev toolintermediate4 days agoDevelopers 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.