Useful Shell Prompt (2020)

This page summarizes the projects mentioned and recommended in the original post on

Our great sponsors
  • SonarQube - Static code analysis for 29 languages.
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • SaaSHub - Software Alternatives and Reviews
  • starship

    ☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!

    It's very feature-rich, showing suitable context for a variety of tools, and can be customised if the defaults don't provide the information you're after.

  • powerlevel10k

    A Zsh theme

    If you're running zsh, I suggest using powerlevel10k[0]. It is stupid fast, and extremely customisable.


  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • pure

    Pretty, minimal and fast ZSH prompt (by sindresorhus)

    I've been using pure theme for a few years and absolutely love it. It shows me everything I need, but doesn't feel cluttered.

    It uses 2 lines, which is actually really nice. It gives space to show where you are and git status/branch, while still allowing you to write long commands.

  • dotfiles

    My dotfiles. (by thanatos)

    I've tried to highlight roughly the relevant bits.

    The basics of it is that we lazy-load an associative array between exit statuses that are signals and their prettified names. (Which we more or less build by querying Python, to get at what's, essentially, defined in signal.h.)

    Once we have that assoc. array, when we get a non-zero exit, we see if it's in the array. If it is, look up the pretty name, print message. If not, just print message with raw exit status. Red & bold so it shows up. (Should probably also use bright red, too. But my work laptop is macOS, & so it's iTerm2, and iTerm2 interprets "bold" to mean "bright & bold".)

    I also use zsh, which is able to be considerably more expressive in what it can accomplish in a PS1 than bash can. Note that the syntax,


NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts