Skip to main content
View all posts

Guide to Creating a Beautiful Terminal Configuration for macOS

I've tested numerous terminal setups over the years and found a configuration I like. This is my opinionated guide to creating a beautiful terminal for macOS.

Marshall Hahn
Marshall HahnSoftware Engineer
Guide to Creating a Beautiful Terminal Configuration for macOS

Software engineers interact with the command line frequently, so it's important to make your terminal feel like home. I've tested numerous terminal setups over the years and found a configuration I like. This is my opinionated guide to creating a beautiful terminal for macOS.

Setup and Installation

Before getting started, there are a few things that need to be installed. First and foremost, I'd recommend installing Homebrew - the missing package manager for macOS according to its creators. If you don't have Homebrew installed yet, you can get it installed by running the following script in your terminal:

Install iTerm2

Next, I would recommend installing iTerm2 - a terminal emulator for macOS which can be used instead of the built in Terminal. We'll configure more settings in iTerm2 later, but for now, let's just get it installed on your system.

Install Zsh and Oh my Zsh

Then, I would install z shell and zsh completions. Note: If you are using macOS Catalina or later, you should already have the z shell configured as your default shell (instead of bash).

Be sure to also install the oh my zsh framework if you'd like to make further customizations. We'll come back to this later in the configuration section, but go ahead and install it now.

Install Starship

Starship is a cross-shell prompt that is minimal, fast, and flexible when it comes to customizations.

Install a Nerd Font

You will want to install a Nerdfont to show special characters that Starship utilizes. I personally use Sauce Code Pro font and like it.

Install Starship

Once you have installed a nerd font, install starship with homebrew:

Add nerd font symbols preset to your starship configuration file:

You will also need to add this to the bottom of your ~/.zshrc file:

Finally, reload your terminal:

Customizations

iTerm2

Choose your Color Scheme

Check out iterm2colorschemes.com for a list of color themes. I personally am using the Dracula theme.

Apply the Color Scheme

To apply the color scheme

  1. Open iTerm settings and go to the Profiles tab
  2. Select Colors → Color presets → Import
  3. Then again, select Color presets → your-color-scheme-name
Update the profile to use your chosen Nerd Font

Remember when you downloaded a nerd font? Let's get that updated in iTerm2.

  1. In the Profiles tab, Select Text
  2. Then in the Font dropdown, select your Nerd Font from the list

Note: You may need to close and reopen iTerm2 to see the changes.

And that's it!

I hope this was helpful for you. I may end up updating this post in the future as my configuration evolves.