🍺 BREW Explorer

← all formulae

pure

brew install pure v1.28.1 MIT

Pretty, minimal and fast ZSH prompt

824
30-day installs · #1402
2.3k
90-day · #1491
9.2k
365-day · #1483
14.3k
★ GitHub stars · updated 3mo ago

Runtime dependencies

GitHub topics

git minimal prompt pure shell shell-prompt shell-theme terminal theme zsh

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [
    "zsh-async"
  ],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Pretty, minimal and fast ZSH prompt",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:41:28+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "pure",
  "github_default_branch": "main",
  "github_last_commit_at": "2026-05-20T05:43:34Z",
  "github_readme_excerpt": "# Pure\n\n\u003e Pretty, minimal and fast ZSH prompt\n\n\u003cimg src=\"screenshot.png\" width=\"864\"\u003e\n\n## Overview\n\nMost prompts are cluttered, ugly and slow. We wanted something visually pleasing that stayed out of our way.\n\n### Why?\n\n- Comes with the perfect prompt character.\n  Author went through the whole Unicode range to find it.\n- Shows `git` branch and whether it\u0027s dirty (with a `*`).\n- Indicates when you have unpushed/unpulled `git` commits with up/down arrows. *(Check is done asynchronously!)*\n- Prompt character turns red if the last command didn\u0027t exit with `0`.\n- Command execution time will be displayed if it exceeds the set threshold.\n- Username and host only displayed when in an SSH session or a container.\n- Shows the current path in the title and the [current folder \u0026 command](screenshot-title-cmd.png) when a process is running.\n- Support VI-mode indication by reverse prompt symbol (Zsh 5.3+).\n- Makes an excellent starting point for your own custom prompt.\n\n## Install\n\nCan be installed with `npm` (not `yarn`) or manually. Requires Git 2.15.2+ and ZSH 5.2+. Older versions of ZSH are known to work, but they are **not** recommended.\n\n### npm\n\n```sh\nnpm install --global pure-prompt\n```\n\nThat\u0027s it. Skip to [Getting started](#getting-started).\n\nIf `prompt -l` does not list `pure`, add this to your `.zshrc` before `promptinit`:\n\n```sh\nfpath+=(\"$(npm root -g)/pure-prompt\")\n```\n\n### [Homebrew](https://brew.sh)\n\n```sh\nbrew install pure\n```\n\nIf you\u0027re not using ZSH from Homebrew (`brew install zsh` and `$(brew --prefix)/bin/zsh`), you must also add the site-functions to your `fpath` in `$HOME/.zshrc`:\n\n```sh\nfpath+=(\"$(brew --prefix)/share/zsh/site-functions\")\n```\n\n### Manually\n\n1. Clone this repo somewhere. Here we\u0027ll use `$HOME/.zsh/pure`.\n\n```sh\nmkdir -p \"$HOME/.zsh\"\ngit clone https://github.com/sindresorhus/pure.git \"$HOME/.zsh/pure\"\n```\n\n2. Add the path of the cloned repo to `$fpath` in `$HOME/.zshrc`.\n```sh\n# .zshrc\nfpath+=($HOME/.zsh/pure)\n```\n\n## Getting started\n\nInitial",
  "github_repo": "sindresorhus/pure",
  "github_stars": 14316,
  "github_topics": [
    "git",
    "minimal",
    "prompt",
    "pure",
    "shell",
    "shell-prompt",
    "shell-theme",
    "terminal",
    "theme",
    "zsh"
  ],
  "homepage": "https://github.com/sindresorhus/pure",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 824,
  "installs_365d": 9247,
  "installs_90d": 2347,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "MIT",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "pure",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 1402,
  "rank_365d": 1483,
  "rank_90d": 1491,
  "raw_hash": "e098f0fe0f6ba6c1",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/p/pure.rb",
  "tap": "homebrew/core",
  "test_dependencies": [
    "zsh"
  ],
  "uses_from_macos": [],
  "version_head": null,
  "version_stable": "1.28.1",
  "versioned_formulae": [],
  "why_use_this": null
}