Favicon of starship

starship

Starship is a fast, customizable command prompt that works across shells like bash, zsh, fish, and PowerShell, and shows contextual info at a glance.

Starship is a cross-shell prompt built for speed and customization. It's for developers who switch between shells or machines and want one consistent, informative prompt instead of maintaining separate configs for bash, zsh, fish, and whatever else they end up using.

Key features

  • Cross-shell support: works with Bash, Zsh, Fish, PowerShell, Nushell, Elvish, Ion, Tcsh, Xonsh, and Cmd (via Clink).
  • Fast by design: the README describes it as fast enough that prompt rendering isn't a noticeable delay, even with many modules enabled.
  • Configurable modules: every part of the prompt can be turned on, off, or customized, so it shows only the context you actually want.
  • Presets: pre-built configuration presets are available if you'd rather start from someone else's setup than build one from scratch.
  • Cross-platform: runs on Linux, macOS, Windows, BSD, and Android (via Termux), covering most environments developers work in.
  • Multiple install paths: installable via a shell script, Cargo, or a long list of OS-specific package managers.
  • Code-signed releases: Windows builds are code-signed through a free program from SignPath, reviewed and approved by the project's maintainer teams.
  • Translated documentation: the guide and docs are translated into languages including German, Spanish, French, Indonesian, Italian, Japanese, Portuguese, Russian, Ukrainian, Vietnamese, and both Simplified and Traditional Chinese.

Ideal use cases

Starship fits anyone who wants a prompt that shows relevant, glanceable context (like Git branch state or the active language runtime) without hand-writing shell-specific prompt scripts. It's especially useful for people who work across multiple shells or multiple machines, since the same configuration file works everywhere Starship is installed.

It's less necessary if you're happy with your shell's default prompt or already have a working custom prompt setup you don't want to replace, since adopting Starship means moving that configuration over. It also requires a Nerd Font to render its icons correctly, so environments where you can't install or configure fonts (some restricted terminals or remote sessions) won't get the full visual experience.

Installation

A Nerd Font needs to be installed and enabled in your terminal first, since Starship's icons depend on it.

On Linux or macOS, the quickest path is the install script:

curl -sS https://starship.rs/install.sh | sh

Or install via Cargo on any platform:

cargo install starship --locked

Package managers are also supported, for example Homebrew:

brew install starship

After installing, you need to hook Starship into your shell's startup file. For Zsh, add this to the end of ~/.zshrc:

eval "$(starship init zsh)"

For Bash, add this to ~/.bashrc:

eval "$(starship init bash)"

Fish, PowerShell, Nushell, and several other shells each have their own init snippet documented in the README. Once set up, starting a new shell session shows the default prompt immediately; configuration and presets are covered in the official docs if you want to customize further.

Starship credits earlier cross-shell prompt projects, including spaceship-prompt and reujab/silver, as inspiration for its design. The project is supported by sponsors through GitHub Sponsors and welcomes contributors of all skill levels, with issues labeled "good first issue" set aside for people looking to make a first contribution; a Discord server is available for questions and for translation help through the project's Crowdin page.

The README also flags a housekeeping detail worth knowing before you clone: the default branch was renamed from master to main, so an existing local clone needs git branch -m master main followed by updating the remote tracking branch, or a fresh clone will just pick up main automatically. Release binaries for Windows go through a documented code-signing process with defined reviewer and approver roles, which is a reasonable thing to check if your organization requires signed executables.

Categories:

Frequently asked questions

Share:

Stars
58.8K
Forks
2.6K
Last commit
1 day ago
Repository age
7 years
License
ISC
Self-hosted
No
Activity score
85/100
View Repository
Built with:

Similar to starship

Favicon

 

  
  
Favicon

 

  
  
Favicon