The de-facto macOS package manager
Homebrew (brew) installs CLI tools, GUI apps, and fonts on macOS (and Linux). It is the path of least resistance for almost every command-line tool you'll meet — including the modern-tools track's ripgrep, fd, fzf, bat, eza, etc.
Install once
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Then add to ~/.zprofile:
eval "$(/opt/homebrew/bin/brew shellenv)"Daily commands
brew install jq— install a CLI tool (formula).brew install --cask iterm2— install a GUI app (cask).brew uninstall jqbrew update— refresh formula list.brew upgrade— upgrade everything.brew list— what's installed.brew leaves— top-level installs (no dependent).brew info jq— version, deps, caveats.brew search ripgrep— find a formula.brew doctor— diagnose problems.
Brewfile — reproducible installs
brew bundle dump --file=Brewfile writes a list of every formula and cask installed. brew bundle install --file=Brewfile restores the same set on a new Mac. This is your one-liner Mac-setup tool.
Services
brew services list shows every long-running service brew manages (postgres, redis, etc.). brew services start postgresql wires up a launchd plist. Stop with brew services stop.