/starship

โ˜„๐ŸŒŒ๏ธ The cross-shell prompt for astronauts.

Primary LanguageRustISC LicenseISC


Starship โ€“ Cross-shell prompt

GitHub Actions workflow status Crates.io version Packaging status
All Contributors Chat on Discord

English ๏ฟฝ ๆ—ฅๆœฌ่ชž ๏ฟฝ ็ฎ€ไฝ“ไธญๆ–‡ ๏ฟฝ ็น้ซ”ไธญๆ–‡ ๏ฟฝ Deutsch ๏ฟฝ Franรงais ๏ฟฝ ะ ัƒััะบะธะน

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.


Starship with iTerm2 and the Snazzy theme

๐Ÿฌ Features

  • 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 (โ˜ธ)

๐Ÿš€ Installation

Prerequisites

Getting Started

  1. Install the starship binary:

    Download archives of precompiled binaries if you don't use the platforms below.

    Homebrew

    $ brew install starship

    Rust (v1.33 or higher)

    $ cargo install starship

    Arch Linux (AUR)

    Starship is available on the AUR under the name starship. Install it with yay or your favorite AUR helper.

    $ yay -S starship

    Nix (unstable)

    $ nix-env --install starship

    Termux

    $ pkg install starship
  2. Add the init script to your shell's config file:

    Bash

    Add the following to the end of ~/.bashrc:

    # ~/.bashrc
    
    eval "$(starship init bash)"

    Fish

    Add the following to the end of ~/.config/fish/config.fish:

    # ~/.config/fish/config.fish
    
    eval (starship init fish)

    Zsh

    Add the following to the end of ~/.zshrc:

    # ~/.zshrc
    
    eval "$(starship init zsh)"

๐Ÿ”ง Configuration

For details on how to configure Starship, check out our documentation.

๐Ÿค Contributing

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.

High Priority Needs

  • ๐Ÿ‘ฉโ€๐Ÿ’ผ 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. ๐Ÿ‘‹

Contributors

Thanks goes to these wonderful people (emoji key):

Matan Kushner
Matan Kushner

๐Ÿ’ป ๐ŸŽจ ๐Ÿค” ๐Ÿš‡ ๐Ÿšง ๐Ÿ‘€ โš ๏ธ
John Letey
John Letey

๐Ÿ’ป ๐Ÿค” ๐Ÿ‘€ โš ๏ธ
Tim Mulqueen
Tim Mulqueen

๐Ÿ’ป ๐Ÿค” ๐Ÿ‘€ โš ๏ธ
Tiffany Le-Nguyen
Tiffany Le-Nguyen

๐Ÿค” ๐Ÿšง ๐Ÿ‘€ ๐Ÿ“–
โ€‹Snuggle
โ€‹Snuggle

๐ŸŽจ ๐Ÿค” ๐Ÿšง ๐Ÿ‘€
Ryan Leckey
Ryan Leckey

๐Ÿ‘€
Youssef Habri
Youssef Habri

๐Ÿ’ป
Kevin Song
Kevin Song

๐Ÿ› ๐Ÿ’ป ๐Ÿ“– โš ๏ธ
Andrew Dassonville
Andrew Dassonville

๐Ÿ› ๐Ÿ’ป
MaT1g3R
MaT1g3R

๐Ÿ’ป ๐Ÿ“– โš ๏ธ
Andrรฉ Zanellato
Andrรฉ Zanellato

๐Ÿ’ป ๐Ÿ“– โš ๏ธ
Saghm Rossi
Saghm Rossi

๐Ÿ’ป ๐Ÿ“– โš ๏ธ
Shu Kutsuzawa
Shu Kutsuzawa

๐Ÿ’ป ๐Ÿ“– โš ๏ธ ๐ŸŒ
Saurav Sharma
Saurav Sharma

๐Ÿ’ป ๐Ÿ“–
Thomas O'Donnell
Thomas O'Donnell

๐Ÿ’ป โš ๏ธ ๐Ÿ“– ๐Ÿ‘€
Bruno Bigras
Bruno Bigras

๐Ÿ’ป ๐Ÿ‘€
Neil Kistner
Neil Kistner

๐Ÿ’ป โš ๏ธ ๐Ÿ‘€
Quinn Strahl
Quinn Strahl

๐Ÿ’ป โš ๏ธ
Titouan Vervack
Titouan Vervack

๐Ÿ’ป โš ๏ธ
Francisco Lopes
Francisco Lopes

๐Ÿ’ป
Andrew Houts
Andrew Houts

๐Ÿ’ป ๐Ÿ“– โš ๏ธ
Nick Young
Nick Young

๐Ÿ’ป ๐Ÿ“– โš ๏ธ ๐Ÿ‘€
Gabriel de Perthuis
Gabriel de Perthuis

๐Ÿ’ป
Hofer-Julian
Hofer-Julian

๐Ÿ“–
Yuji Ueki
Yuji Ueki

๐Ÿ–‹ ๐ŸŒ
่ฐข็ฅฏๆ™–
่ฐข็ฅฏๆ™–

๐Ÿ’ป ๐Ÿ“– ๐ŸŒ ๐Ÿ‘€
Kutsuzawa Ryo
Kutsuzawa Ryo

๐Ÿ‘€ ๐Ÿ’ป โš ๏ธ ๐ŸŒ
hdevalke
hdevalke

๐Ÿค”
Kuba Clark
Kuba Clark

๐Ÿ’ป ๐Ÿ“– โš ๏ธ
Gimbar
Gimbar

๐Ÿ’ป โš ๏ธ ๐Ÿ“–
Tom Hotston
Tom Hotston

๐Ÿ’ป ๐Ÿ“–
Bijan Chokoufe Nejad
Bijan Chokoufe Nejad

๐Ÿ’ป โš ๏ธ ๐Ÿ‘€
yuri
yuri

๐Ÿ’ป ๐Ÿ“– โš ๏ธ
TsubasaKawajiri
TsubasaKawajiri

๐ŸŒ
Ryo Yamashita
Ryo Yamashita

๐Ÿ’ป
Thomas Lee
Thomas Lee

๐Ÿ’ป
(ยดโŒฃ`สƒฦช)
(ยดโŒฃ`สƒฦช)

๐Ÿ’ป
Barnaby Keene
Barnaby Keene

๐Ÿ’ป
Keith Wade
Keith Wade

๐Ÿ’ป โš ๏ธ

This project follows the all-contributors specification. Contributions of any kind welcome!

๐Ÿ’ญ Inspired By

Please check out these previous works that helped inspire the creation of starship. ๐Ÿ™


Starship rocket icon

๐Ÿ“ License

Copyright ยฉ 2019-present, Starship Contributors.
This project is ISC licensed.