DEV Community

Alex Spinov
Alex Spinov

Posted on

Every CLI Tool I Install on a New Mac (Updated 2026)

I set up a new Mac last month. Here's exactly what I installed.

No fluff. Just the tools I actually use daily, in install order.


Package Manager

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Enter fullscreen mode Exit fullscreen mode

Everything below assumes you have Homebrew.


Terminal & Shell

brew install --cask iterm2
brew install zsh-autosuggestions zsh-syntax-highlighting
brew install starship  # Cross-shell prompt
echo 'eval "$(starship init zsh)"' >> ~/.zshrc
Enter fullscreen mode Exit fullscreen mode

Why starship: One config file, works across bash/zsh/fish, shows git branch + Python env + Node version automatically.


Git & GitHub

brew install git gh lazygit
gh auth login
Enter fullscreen mode Exit fullscreen mode

lazygit is the tool I recommend most. Terminal UI for git that makes rebasing, cherry-picking, and resolving conflicts painless.


Code Editors

brew install --cask visual-studio-code cursor
Enter fullscreen mode Exit fullscreen mode

VS Code for most things. Cursor for AI-heavy coding sessions.


Programming Languages

brew install python@3.12 node nvm
brew install go rustup
rustup-init
Enter fullscreen mode Exit fullscreen mode

CLI Utilities (the good stuff)

brew install \
  jq         \  # JSON processor
  ripgrep    \  # Better grep (rg)
  fd         \  # Better find
  bat        \  # Better cat (with syntax highlighting)
  eza        \  # Better ls
  fzf        \  # Fuzzy finder
  htop       \  # Better top
  tldr       \  # Better man pages
  httpie     \  # Better curl (for humans)
  duf        \  # Better df (disk usage)
  dust       \  # Better du (directory sizes)
  procs      \  # Better ps
  dog        \  # Better dig (DNS)
  gping         # Better ping (with graph)
Enter fullscreen mode Exit fullscreen mode

The "better X" tools are genuinely life-changing. Once you use ripgrep you'll never go back to grep.


Docker & Containers

brew install --cask docker
brew install docker-compose lazydocker
Enter fullscreen mode Exit fullscreen mode

lazydocker = lazygit but for Docker. Terminal UI for managing containers.


Database Tools

brew install postgresql@16 redis sqlite
brew install --cask dbeaver-community
Enter fullscreen mode Exit fullscreen mode

API & HTTP

brew install --cask postman insomnia
brew install curl wget
Enter fullscreen mode Exit fullscreen mode

Python-Specific

pip install \
  ruff       \  # Linter + formatter (replaces black, isort, flake8)
  ipython    \  # Better Python REPL
  httpx      \  # Better requests
  rich       \  # Beautiful terminal output
  typer         # Build CLIs fast
Enter fullscreen mode Exit fullscreen mode

Automation & Scraping

pip install playwright scrapy beautifulsoup4
playwright install
npm install -g apify-cli
apify login
Enter fullscreen mode Exit fullscreen mode

I maintain 77 scrapers on Apify so these are essential.


Misc Apps

brew install --cask \
  rectangle   \  # Window management (free)
  raycast     \  # Spotlight replacement
  notion      \  # Notes
  obsidian    \  # Second brain
  1password      # Passwords
Enter fullscreen mode Exit fullscreen mode

My one-liner setup script

I keep all of this in a single script:

#!/bin/bash
# setup.sh — run on fresh Mac
set -e

# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Core tools
brew install git gh lazygit jq ripgrep fd bat eza fzf htop tldr httpie python@3.12 node

# Cask apps
brew install --cask iterm2 visual-studio-code docker rectangle raycast

# Python tools
pip install ruff ipython httpx rich playwright
playwright install

# Shell setup
brew install starship zsh-autosuggestions zsh-syntax-highlighting
echo 'eval "$(starship init zsh)"' >> ~/.zshrc

echo "Done! Restart terminal."
Enter fullscreen mode Exit fullscreen mode

Save it. Run it on every new Mac. 15 minutes to a fully configured dev environment.


What's on YOUR new Mac install list that I'm missing? I'm especially curious about tools I haven't heard of.


Follow me for more developer productivity content. I write about automation and build open-source tools.


More from me: 10 Dev Tools I Use Daily | 77 Scrapers on a Schedule | 150+ Free APIs

Top comments (0)