Starship is the minimal, blazing fast, and extremely customizable prompt for any shell!
The prompt shows information you need while you're working, while staying sleek and out of the way.
- Prompt character turns red if the last command exits with non-zero code
- Current username if not the same as the logged-in user
- Current Java version(
☕
) - Current Node.js version(
⬢
) - Current Rust version (
🦀
) - Current Ruby version (
💎
) - Current Python version (
🐍
) - Current Go version (
🐹
) - Nix-shell environment detection
- Print an environment variable
- Current version of package in current directory (
📦
)- npm (Node.js)
- cargo (Rust)
- poetry (Python)
- Current battery level and status
- Current Git branch and rich repo status:
=
— conflicting changes⇡
— ahead of remote branch⇣
— behind of remote branch⇕
— diverged changes?
— untracked changes$
— stashed changes!
— modified files+
— added files»
— renamed files✘
— deleted files
- Execution time of the last command if it exceeds the set threshold
- Indicator for jobs in the background (
✦
) - Current Kubernetes Cluster and Namespace (
☸
) - Current AWS profile (
☁️
)
- A Powerline font installed and enabled in your terminal (for example, try Fira Code).
-
Install the starship binary:
Download archives of precompiled binaries if you don't use the platforms below.
$ brew install starship
$ cargo install starship
Starship is available on the AUR under the name
starship
. Install it withyay
or your favorite AUR helper.$ yay -S starship
$ nix-env --install starship
$ pkg install starship
Download a prebuilt binary and place in /usr/local/bin/
$ wget -q --show-progress https://github.com/starship/starship/releases/latest/download/starship-x86_64-unknown-linux-gnu.tar.gz $ tar xvf starship-x86_64-unknown-linux-gnu.tar.gz $ sudo mv starship /usr/local/bin/
-
Add the init script to your shell's config file:
Add the following to the end of
~/.bashrc
:# ~/.bashrc eval "$(starship init bash)"
Add the following to the end of
~/.config/fish/config.fish
:# ~/.config/fish/config.fish starship init fish | source
Add the following to the end of
~/.zshrc
:# ~/.zshrc eval "$(starship init zsh)"
Add the following to the end of
~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
(or~/.config/powershell/Microsoft.PowerShell_profile.ps1
on -Nix):# ~\Documents\PowerShell\Profile.ps1 Invoke-Expression (&starship init powershell)
For details on how to configure Starship, check out our documentation.
We are always looking for contributors of all skill levels! If you're looking to ease your way into the project, try out a good first issue.
- 👩💼 Product Manager
- We have a GitHub Project and many unorganized/unprioritized features, as well as ideas that haven't yet been made into issues. Starship needs someone to own the product direction!
- 👩🎨 Designer
- Like making eye-catching websites? Excellent! We are looking to create a beautiful landing page showing off Starship in all its glory. Helping design for Starship's brand is a great opportunity to try out new ideas!
- 👩💻 Rust Developer
- There is a lot of low-hanging fruit when it comes to writing idiomatic Rust, designing effective Rust architecture, performance optimizations, cross-platform build optimizations, and more! I (@matchai) am a beginner to Rust. Come point us in the right direction!
If you are interested in helping contribute to starship, please take a look at our Contributing Guide. Also, feel free to drop into our Discord server and say hi. 👋
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
Please check out these previous works that helped inspire the creation of starship. 🙏
-
denysdovhan/spaceship-prompt - A ZSH prompt for astronauts.
-
denysdovhan/robbyrussell-node - Cross-shell robbyrussell theme written in JavaScript.
-
reujab/silver - A cross-shell customizable powerline-like prompt with icons.
Copyright © 2019-present, Starship Contributors.
This project is ISC licensed.