# Starship — Minimal Blazing-Fast Customizable Shell Prompt > Starship is a minimal, blazing-fast, and infinitely customizable prompt for any shell. Works with bash, zsh, fish, PowerShell, nushell, and more. Single TOML config file and Rust-powered speed with gorgeous defaults. ## Install Paste the prompt below into your AI tool: ## Quick Use ```bash # Install brew install starship # macOS curl -sS https://starship.rs/install.sh | sh scoop install starship # Windows ``` Add to shell config: ```bash # ~/.bashrc eval "$(starship init bash)" # ~/.zshrc eval "$(starship init zsh)" # ~/.config/fish/config.fish starship init fish | source ``` Customize `~/.config/starship.toml`: ```toml add_newline = true [character] success_symbol = "[➜](bold green)" error_symbol = "[✗](bold red)" [directory] truncation_length = 3 truncate_to_repo = true [git_branch] symbol = "🌱 " [nodejs] format = "via [⬢ $version](bold green) " ``` ## Intro Starship is a minimal, blazing-fast, and infinitely customizable prompt for any shell. Written in Rust, it reads a single TOML config file and renders contextual information (git status, node version, k8s context, cloud profile) without measurable latency. Compatible with bash, zsh, fish, PowerShell, nushell, cmd, xonsh, ion, elvish, and more. - **Repo**: https://github.com/starship/starship - **Stars**: 56K+ - **Language**: Rust - **License**: ISC ## What Starship Does - **Git info** — branch, status, stash, upstream - **Language versions** — Node, Python, Rust, Go, Java, Ruby, PHP, .NET, etc. - **Cloud** — AWS/GCP/Azure profile - **Kubernetes** — current context + namespace - **Docker context** — show active context - **Package version** — auto-detect package.json, Cargo.toml, pyproject.toml - **Command duration** — show time for slow commands - **Exit code** — red on non-zero - **Custom modules** — run any command and display output ## Architecture Starship runs as a subprocess on each prompt. Reads TOML config, collects context from environment + git + language detection + cloud CLIs, renders using a single `starship prompt` call. Aggressive caching keeps it below ~50ms. ## Self-Hosting CLI tool, self-contained Rust binary. ## Key Features - Universal (any shell) - Single TOML config - 100+ built-in modules - Nerd Font symbol support - Command duration - Right prompt support - Conditional rendering - Highly customizable colors and formats - Lightning fast (<50ms) ## Comparison | Prompt | Language | Shells | Speed | Config | |---|---|---|---|---| | Starship | Rust | All | Fastest | TOML | | Powerlevel10k | Zsh | Zsh only | Very fast | Interactive | | Spaceship | Zsh | Zsh only | Slow | zsh vars | | pure | Zsh | Zsh only | Fast | zsh vars | | oh-my-posh | Go | All | Fast | JSON/YAML/TOML | ## FAQ **Q: What about Powerlevel10k?** A: p10k is slightly faster in zsh (no subprocess), but it's zsh-only. Starship is cross-shell with simpler config. Both are good choices. **Q: Do I need a Nerd Font?** A: The default config uses Unicode symbols. A Nerd Font (JetBrainsMono Nerd Font, etc.) gives a nicer icon experience. **Q: What's the performance like?** A: Written in Rust; typical benchmarks are 20-50ms. If it's slow, use `starship timings` to diagnose which module is the bottleneck. ## Sources & Credits - Docs: https://starship.rs - GitHub: https://github.com/starship/starship - License: ISC --- Source: https://tokrepo.com/en/workflows/starship-minimal-blazing-fast-customizable-shell-prompt-85b6c0d9 Author: Script Depot