My Terminal Setup in 2025
A fast, pretty terminal makes development more enjoyable. Here's my current setup.
The Stack
- **Terminal**: iTerm2 (macOS)
- **Shell**: zsh
- **Prompt**: Starship
- **Font**: JetBrains Mono Nerd Font
- **Colors**: Catppuccin Mocha
Why This Combo
I've tried oh-my-zsh, Powerlevel10k, Fish. This setup is fast and minimal while still looking great.
Starship Prompt
Starship is written in Rust. It's fast.
Install:
curl -sS https://starship.rs/install.sh | sh
Add to `.zshrc`:
eval "$(starship init zsh)"
My config (`~/.config/starship.toml`):
format = """
$directory$git_branch$git_status$nodejs$python
$character
"""
[directory]
truncation_length = 3
truncate_to_repo = true
[git_branch]
symbol = " "
[git_status]
conflicted = "⚠"
ahead = "⇡${count}"
behind = "⇣${count}"
diverged = "⇕"
[nodejs]
symbol = " "
[character]
success_symbol = "[❯](green)"
error_symbol = "[❯](red)"
Useful Zsh Aliases
# Git
alias gs="git status"
alias gc="git commit -m"
alias gp="git push"
alias gl="git log --oneline -10"
# Navigation
alias ..="cd .."
alias ...="cd ../.."
alias ll="ls -la"
# Development
alias nr="npm run"
alias nrd="npm run dev"
alias nrb="npm run build"
# Quick edits
alias zshrc="code ~/.zshrc"
alias reload="source ~/.zshrc"
Zsh Plugins (Manually)
I don't use oh-my-zsh. Just a few plugins:
zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ~/.zsh/zsh-autosuggestions
echo "source ~/.zsh/zsh-autosuggestions/zsh-autosuggestions.zsh" >> ~/.zshrc
zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting ~/.zsh/zsh-syntax-highlighting
echo "source ~/.zsh/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ~/.zshrc
Key Bindings
# Word navigation
bindkey "^[[1;3C" forward-word # Alt+Right
bindkey "^[[1;3D" backward-word # Alt+Left
# History search
bindkey "^[[A" history-search-backward
bindkey "^[[B" history-search-forward
The Result
A prompt that tells me:
- Current directory
- Git branch and status
- Node version (when in a Node project)
And it's *fast*. No lag when opening new tabs.
Your terminal is where you spend hours every day. Make it nice.