DEV Community

Anton Mendelson
Anton Mendelson

Posted on • Edited on

Setting Up new MacBook for Web Development and DX

Inspired by robinwieruch's setup

System Preferences

Appearance

  • Enable Dark Mode for reduced eye strain
  • Show scrollbars only when scrolling for a cleaner UI

Dock Configuration

  • Remove default apps (keep only essential ones like Launchpad, Mail, Calendar)
  • Enable automatic hide
  • Disable showing suggested and recent apps
  • Apply faster Dock hiding:
# Enable faster hiding defaults write com.apple.dock autohide-delay -float 0 defaults write com.apple.dock autohide-time-modifier -int 0 killall Dock # To undo faster hiding defaults write com.apple.dock autohide-delay -float 0.5 defaults write com.apple.dock autohide-time-modifier -int 0.5 killall Dock 
Enter fullscreen mode Exit fullscreen mode

Trackpad & Accessibility

  • Enable tap to click
  • Set tracking speed to level 9
  • Disable unnecessary gestures
  • Set scroll speed to maximum for faster navigation

Keyboard Settings

  • Disable smart quotes
  • Turn off automatic capitalization
  • Disable spelling correction
  • Configure fn key for dictation
  • Set custom shortcuts:
    • Input sources: cmd + space
    • Disable Spotlight shortcuts
    • New iTerm tab here: cmd + ;

Finder Optimization

# Set screenshots to JPG format defaults write com.apple.screencapture type jpg # Prevent Preview from opening previous files defaults write com.apple.Preview ApplePersistenceIgnoreState YES # Show Library folder chflags nohidden ~/Library # Show hidden files defaults write com.apple.finder AppleShowAllFiles YES # Enable path bar defaults write com.apple.finder ShowPathbar -bool true # Show status bar defaults write com.apple.finder ShowStatusBar -bool true # Set list view as default defaults write com.apple.finder FXPreferredViewStyle -string "Nlsv" killall Finder 
Enter fullscreen mode Exit fullscreen mode

Essential Software Installation

Install Homebrew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # Add Homebrew to PATH echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)" # Update Homebrew brew update 
Enter fullscreen mode Exit fullscreen mode

Install Applications

# Development Tools brew install --cask visual-studio-code brew install --cask iterm2 brew install --cask webstorm brew install --cask docker brew install --cask postman # Browsers brew install --cask google-chrome brew install --cask firefox brew install --cask arc brew install --cask zen-browser # Productivity brew install --cask raycast brew install --cask rectangle brew install --cask notion brew install --cask slack # Communication brew install --cask zoom brew install --cask skype brew install --cask telegram # Cloud Storage brew install --cask google-drive brew install --cask idrive # Security brew install --cask 1password brew install --cask protonvpn # Utilities brew install --cask vlc brew install --cask calibre brew install --cask folx brew install --cask karabiner-elements 
Enter fullscreen mode Exit fullscreen mode

Terminal Setup

Install Oh My Zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" 
Enter fullscreen mode Exit fullscreen mode

Install Starship Theme

brew install starship echo 'eval "$(starship init zsh)"' >> ~/.zshrc 
Enter fullscreen mode Exit fullscreen mode

Install Nerd Font

brew tap homebrew/cask-fonts brew install --cask font-hack-nerd-font 
Enter fullscreen mode Exit fullscreen mode

Node.js Setup with NVM

brew install nvm # Add NVM to shell echo "source $(brew --prefix nvm)/nvm.sh" >> ~/.zshrc source ~/.zshrc # Install LTS version nvm install --lts # Update npm npm install -g npm@latest 
Enter fullscreen mode Exit fullscreen mode

Git Configuration

# Set global config git config --global user.name "Your Name" git config --global user.email "you@your-domain.com" # Set better git log git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit" # Set default branch to main git config --global init.defaultBranch main 
Enter fullscreen mode Exit fullscreen mode

SSH Setup

ssh-keygen -t rsa # Copy public key cat ~/.ssh/id_rsa.pub 
Enter fullscreen mode Exit fullscreen mode

Application-Specific Configuration

Arc

  • Install chrome extension - Youtube Playback Speed Control

Raycast

  • Install essential extensions (color picker, kill process, ScreenOCR)
  • Set clipboard history shortcut to option + cmd + c
  • Configure hyperkey as caps lock
  • Set up application quick launch shortcuts

iTerm2

  • Set as default terminal
  • Configure transparency (5%)
  • Enable natural text editing
  • Install Oh My Zsh plugins:
    • zsh-completions
    • zsh-autosuggestions
    • zsh-syntax-highlighting

WebStorm

# Add alias to .zshrc echo 'alias ws="open -na \"WebStorm.app\""' >> ~/.zshrc 
Enter fullscreen mode Exit fullscreen mode
  • Disable reopening projects on startup
  • Enable preview tab
  • Enable single-click file opening
  • Enable compact mode
  • Install SuperMaven plugin for AI completions

Setup BlackHole audio driver to record app's sound via QuickTime

  • Open Audio MIDI Setup
  • Create new Multi-Output Device
  • Use BlackHole 2ch as Input

Final Touches

Don't forget to:

  • Set up Apple Mail and Calendar with all accounts
  • Configure your IDE preferences
  • Set up workspace organization in Arc browser
  • Test all keyboard shortcuts and customize as needed

Top comments (0)