# Improving Your Terminal Prompt with a Starship

DevFeed: [Improving Your Terminal Prompt with a Starship](<https://devfeed.tech/articles/improving-your-terminal-prompt-with-a-starship-28351.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/terminal/2019/10/26/improving-your-terminal-prompt-with-a-starship.html>)

Author: Fuzzygroup

Published: 2019-10-26T00:00:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Terminal](<https://devfeed.tech/topics/terminal.md>), [Shell](<https://devfeed.tech/topics/shell.md>), [Zsh](<https://devfeed.tech/topics/zsh.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [cross-platform](<https://devfeed.tech/topics/cross-platform.md>), [Homebrew](<https://devfeed.tech/topics/homebrew.md>), [Rust](<https://devfeed.tech/topics/rust.md>), [Git](<https://devfeed.tech/topics/git.md>), [Amazon EC2](<https://devfeed.tech/topics/amazon-ec2.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [git](<https://devfeed.tech/tags/git.md>), [homebrew](<https://devfeed.tech/tags/homebrew.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [osx](<https://devfeed.tech/tags/osx.md>), [prompt](<https://devfeed.tech/tags/prompt.md>), [rust](<https://devfeed.tech/tags/rust.md>), [starship](<https://devfeed.tech/tags/starship.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [zsh](<https://devfeed.tech/tags/zsh.md>)

## AI overview

This tutorial explains how to improve a terminal prompt with Starship, a Rust-powered cross-shell prompt. It provides Homebrew installation and Zsh initialization commands for macOS, and describes information the prompt can show, including the current directory, Git status, Ruby version, and AWS region.

## Source excerpt

Photo courtesy of my boss and friend, Dave Sifry who is in London right now attending MozFest; lucky guy! I have a lot of computer skills. I can program in multiple languages, I can remember how to use Norton Utilities for DOS, I can remember how to use Sun OS, I can tell you about not HTML, not XML, not SGML but GML (which begat SGML which in turn begat HTML which in turn begat XML), etc. One of those computer skills that I don't have is *nix shell scripting - I suck at Bash; I suck at Zshell, etc. And *nix shell scripting is how you customize your Terminal prompt. Now I know this sounds like Nerd minutiae (and it is) but your Terminal prompt is this rich land of information (or it can be; normally mine isn't). About 6 months ago, Sean Kennedy, my pairing partner in crime, got me to change over to Zshell from Bash and, in doing so, update my prompt. My prompt now looks like this: And that's damn good. I mean it tells me the git repo and everything. That's awesome. But, and this is a big but - if you have to customize it with bash, we can do better. The easy way to do better is to use Starship aka "The cross-shell prompt for astronauts". This is a Rust powered prompt that is designed for: ease of use cross platform compatibilty customization Here's how to get going with it on OSX: Install it with HomeBrew: brew install starship Add the following to the END of ~/.zshrc: eval "$(starship init zsh)" Source it with: source ~/.zshrc One of the reasons the prompt is so damn important isn't your local box but when you're logged into remote boxes such as AWS EC2 instances. I cannot say just how much I wish this had existed when I was maintaining a large cluster of EC2 instances that I used to log into daily. Sigh. Here's how my prompt looks out of the box: I haven't delved too deeply into customization but the fact that I can use emojis to display my terminal state including shrug for untracked fills me a deep and unending joy: Now if you're not a hard core developer nerd,