DEV Community

Frankie Valentine
Frankie Valentine

Posted on • Updated on

Minified: Setup your Mac for development, 2020 edition.

Updated 3/27/2020: Removed create-react-app global install as it is now recommended to use npx.
Updated 7/21/2020: Fixed typos.

A minified version of my first post. If you need a more detailed walkthrough I suggest reading it first!

  • Initial setup:
    • Filevault: On
    • Disable Ask Siri
    • Location Services: On (Limited)
    • Check software updates
    • Photos app > disable iCloud sync
    • Messages app > configure iMessage accounts
    • App Store > install previously installed applications
  • Terminal Finder Commands:
    • Show Library Folder > chflags nohidden ~/Library
    • Show hidden files > defaults write AppleShowAllFiles YES
    • Show path bar > defaults write ShowPathbar -bool true
    • Show status bar > defaults write ShowStatusBar -bool true
  • System Preferences:
    • Keyboard > Text > Disable “Correct spelling automatically”
    • Security and Privacy > Firewall > On
    • Security and Privacy > General > Allow App Store and identified developers
  • Alfred:
  • Command Line Tools, Homebrew & Casks:
    • Install Command Line Tools xcode-select --install
    • Install Homebrew /usr/bin/ruby -e "$(curl -fsSL”
    • Install Node and pin brew install node && brew pin node
    • Install Casks:
brew cask install hyper
brew cask install visual-studio-code
brew cask install google-chrome
Enter fullscreen mode Exit fullscreen mode
  • Hyper, zsh & oh-my-zsh:
    • Open Hyper
    • Check if zsh is installed zsh --version
    • If not, install brew install zsh
    • Change shells chsh -s /bin/zsh
    • Check shell change echo $SHELL
    • Install oh-my-zsh: sh -c "$(curl -fsSL"
    • Setup Homebrew alias: nano ~/.zshrc
      • Add alias: alias brewup=‘brew update; brew upgrade; brew cleanup; brew doctor’
      • Add zshconfig alias: alias zshconfig=“code ~/.zshrc”
      • Save file: CTRL + O
      • Exit: CTRL + X
  • Git and SSH
    • Config Git:
      • git config --global “First Last” (keep the quotes)
      • git config --global “Email” (keep the quotes)
      • git config --get
      • git config --get
    • Git alias setup:
      • Add below code to code ~/.gitconfig
      • Replace name and email
name = First Last
email =
a = add
ca = commit -a
cam = commit -am
s = status
pom = push origin master
pog = push origin gh-pages
puom = pull origin master
puog = pull origin gh-pages
cob = checkout -b
ui = auto
Enter fullscreen mode Exit fullscreen mode
  • SSH:
    • Check if one exists: ls ~/.ssh/id_rsa
    • Generate key and replace email: ssh-keygen -t rsa -b 4096 -C “”
    • Add key: ssh-add ~/.ssh/id_rsa
    • Go to and add new key to profile in Settings
  • VS Code:
    • Open Command Palette and add shell command: shell command: Install ‘code’ command in PATH’
    • Install JavaScript support from Welcome screen
    • Install Atom keyboard shortcuts from Welcome screen
    • Install extensions:
      • npm Intellisense
      • Path Intellisense
      • ESLint
      • Prettier - Code formatter
      • Live Share
      • Bookmarks
      • Auto Close Tag
      • Bracket Pair Colorizer 2
      • DotENV
      • GraphQL
      • indent-rainbow
      • Live Server
      • Debugger for Chrome (if using Chrome)
      • Peacock
      • Color highlight
      • Markdown Preview Enhanced
      • Babel JavaScript
      • Git History
      • Simple React Snippets
    • Install themes:
      • Atom One Dark
      • Atom One Light
      • Github theme
      • Material theme pack
      • Icon pack:
        • Material icon
    • Optional:
      • Zeit theme: curl | tar xvz -C ~/.vscode/extensions
      • JetBrains Mono font family change:
        • Install the font here
        • Open Font Book > Hit + > Locate the font folder in Downloads
        • Hyper setup:
          • code ~/.hyper.js
          • Change fontFamily to JetBrains Mono
          • Change fontSize to 16
        • VS Code setup:
          • Open Command Palette
          • Search ‘user settings’ (JSON)
          • Font Family JetBrains Mono
      • Google Chrome dev tools theme:
  • n-install, npm, & Yarn
    • Install n: brew install n
    • Make cache folder and change permissions:
      • sudo mkdir -p /usr/local/n
      • sudo chown -R $(whoami) /usr/local/n
      • sudo chown -R $(whoami) /usr/local/bin /usr/local/lib /usr/local/include /usr/local/share
    • Install Yarn: brew install Yarn
  • mySQL, MongoDB, & note on other Databases
    • Tap services: brew tap homebrew/services
    • Install mySQL: brew install mysql@5.7
    • Tap MongoDB: brew tap mongodb/brew
    • Install MongoDB: brew install mongodb-community@4.2
  • CLI’s:
    • npm install -g now
    • npm install -g netlify-cli
    • npm install -g surge
    • npm install -g gatsby-cli
    • npm install -g vue-cli
    • brew install hub (Github official CLI in beta)
  • Additional Apps:
    • Notion
    • Slack
    • Firefox Developer Edition
    • Spectrum
    • Numi
    • Magnet
    • Pocket
    • Parcel
    • Dashlane
    • Spark
    • Postman
    • GraphQL Playground
    • Dozer

Top comments (5)

minmaxdata profile image
Karen McAdams

Ill stick with iterm thanks anyways

nickdeshpande profile image
Nick D

sh -c "$(curl -fsSL
should be
sh -c "$(curl -fsSL"

v3frankie profile image
Frankie Valentine

Not seeing the fix here. Looks like the command in the article is correct according to oh-my-zsh docs.

nickdeshpande profile image
Nick D

brew cask install ‘hyper’
should be
brew cask install hyper

v3frankie profile image
Frankie Valentine

Fixed this one thanks Nick!