Skip to content

My Mac Development Setup with Homebrew

My full Homebrew Brewfile for setting up a new Mac for development.

Download the Brewfile and run the following to install everything at once:

brew bundle --file=Brewfile

Taps

Third-party repositories for additional formulae.

tap "azure/azd"
tap "microsoft/foundrylocal"

Formulae

Core Libraries

brew "openssl@3"
brew "readline"
brew "freetype"
brew "glib"
brew "cairo"
brew "pkgconf"

Cloud CLIs

brew "awscli"
brew "azure-cli"
brew "azure/azd/azd"
brew "gh"

Language & Package Managers

brew "python@3.12"
brew "pyenv"
brew "rbenv"
brew "cocoapods"
brew "pnpm"
brew "yarn"
brew "golangci-lint"

Databases & Services

brew "mongosh"
brew "redis"
brew "nginx", restart_service: :changed
brew "supervisor"

Media & Graphics Libraries

brew "pngquant"
brew "poppler"
brew "sdl2"
brew "sdl2_image"
brew "sdl2_mixer"

Shell & Utilities

brew "pure"       # Pretty Zsh prompt
brew "z"          # Directory jumper
brew "duti"       # Set default apps from CLI
brew "enchant"    # Spell checking library
brew "lsusb"      # List USB devices

Casks

AI Tools

cask "claude"
cask "claude-code"
cask "copilot-cli"

Development

cask "docker-desktop"
cask "iterm2"
cask "postman"
cask "visual-studio-code"
cask "temurin"

Browsers

cask "google-chrome"
cask "microsoft-edge"

Media & Streaming

  • OBS — Screen recording & streaming
  • Shotcut — Video editor
  • VLC — Media player
cask "obs"
cask "shotcut"
cask "vlc"

Utilities

cask "keycastr"
cask "maccy"
cask "rar"
cask "the-unarchiver"
cask "transmission"
cask "wkhtmltopdf"

Communication

cask "discord"
cask "teamviewer"

VS Code Extensions

Python

vscode "ms-python.python"
vscode "ms-python.vscode-pylance"
vscode "ms-python.debugpy"
vscode "ms-python.vscode-python-envs"
vscode "donjayamanne.python-environment-manager"
vscode "charliermarsh.ruff"
vscode "twixes.pypi-assistant"

Jupyter

vscode "ms-toolsai.jupyter"
vscode "ms-toolsai.jupyter-keymap"
vscode "ms-toolsai.jupyter-renderers"
vscode "ms-toolsai.vscode-jupyter-cell-tags"
vscode "ms-toolsai.vscode-jupyter-slideshow"

Azure & Cloud

vscode "ms-azuretools.azure-dev"
vscode "ms-azuretools.vscode-azureresourcegroups"
vscode "ms-azuretools.vscode-bicep"
vscode "ms-azuretools.vscode-containers"
vscode "ms-azuretools.vscode-docker"
vscode "ms-dotnettools.vscode-dotnet-runtime"

GitHub

vscode "github.codespaces"
vscode "github.copilot-chat"
vscode "github.vscode-github-actions"
vscode "github.vscode-pull-request-github"
vscode "anthropic.claude-code"

Databases

vscode "mongodb.mongodb-vscode"
vscode "ms-ossdata.vscode-pgsql"
vscode "mtxr.sqltools"
vscode "mtxr.sqltools-driver-mysql"
vscode "mtxr.sqltools-driver-sqlite"

Containers & Remote

vscode "docker.docker"
vscode "ms-vscode-remote.remote-containers"

Web & Markup

vscode "amandeepmittal.pug"
vscode "syler.sass-indented"
vscode "vue.volar"
vscode "esbenp.prettier-vscode"
vscode "yzhang.markdown-all-in-one"
vscode "davidanson.vscode-markdownlint"

Other

vscode "eamodio.gitlens"
vscode "mechatroner.rainbow-csv"
vscode "ms-vscode.makefile-tools"
vscode "shopify.ruby-lsp"
vscode "streetsidesoftware.code-spell-checker"
vscode "tonybaloney.vscode-pets"

UV Tools

uv "pre-commit"
uv "specify-cli"

Comments