
Cross-shell prompt that displays contextual information about git repos, programming languages, and system status
Starship is a cross-shell prompt written in Rust that works with bash, zsh, fish, PowerShell, and other shells. It displays contextual information based on the current directory, showing details like git branch status, programming language versions (Node.js, Python, Rust, etc.), Kubernetes context, and system information.
The prompt automatically detects the tools and environments in your current directory and displays relevant modules. For example, it shows the Node.js version when in a JavaScript project, git branch and status when in a repository, or Docker context when working with containers. Each module can be individually configured or disabled through a TOML configuration file.
Starship supports extensive customization through its configuration system, allowing users to modify colors, symbols, format strings, and conditional display logic for each module. It includes built-in support for over 50 different tools and environments, from programming languages and version managers to cloud platforms and container orchestration tools. The prompt requires a Nerd Font for proper icon display and can be installed via package managers on most operating systems.
# via Homebrew
brew install starship
# via Cargo
cargo install starship --locked
# via Script
curl -sS https://starship.rs/install.sh | sh
