macOS: Setting up my Mac for Development

Seems like I’m setting up a new MacBook Pro a couple of times a year (between work and personal). This guide is to help remember all those things you need to get a good development (test) environment set up! Automating the good things.
Getting Started
First things is to update macOS to get the latest security patches and updates.
Pre-requisities
- This is for macOS Big Sur
- Make a ~/Development folder
- Install Command Line Tools for Xcode
Homebrew
Install Homebrew package manager to install most apps from the command line.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Make sure everything is up to date
brew update
Install my programs (note: I’m constantly adding to this list)
# GUI programs
brew install --cask \
alfred \
brave-browser \
google-chrome \
docker \
dropbox \
firefox \
iterm2 \
lastpass \
microsoft-edge \
notion \
postman \
rectangle \
slack \
spotify \
tableplus \
visual-studio-code \
vlc
Shell
Catalina comes with zsh as the default. Let’s install Oh My Zsh because it’s better.
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Node.js
Install Node Version Manager (nvm)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash
Restart terminal and install the latest version of Node
nvm install node
Run the final command to confirm node is installed
nvm use node
node -v && npm -v #confirm the install worked
Git
Make and set git config
touch ~/.gitconfig
Copy from my dot files
Pull the following repos from GitHub:
- dotfiles
- testing-guides
- testingconferences
- images-catalog
SSH
Make and set ssh config
mkdir ~/.ssh && touch ~/.ssh/config
Copy from my dot files
Copy keys from my place
iTerm
- Copy .zshrc from dotfiles repo
- Set theme to be Minimal
macOS Settings
- Enable Battery Percentage. Dock & Menu Bar > Battery
- Enable Put Display to sleep using Hot Corners. Desktop & Screen Saver > Screen Saver > Hot Corners. Use the lower left to put display to sleep.
Visual Studio Code
- Copy over settings from .vscode in dotfiles repo
Install Other Apps
- EOS Webcam
- Google Chrome Canary
- MacPass
- Spark Email
- Xmind
- Zoom
- VirtualBox
Conclusion
This sums up nicely my settings for a MacBook Pro. Hopefully it helps speed you (and I) along on our journeys.
Inspired by (and taken with a lot of credit from) Tania Rascia. I’ve used her Guide a few times before deciding to make my own version.