2023 Mac Setup for Web Development (Part 01)
Tags: apple, environment, webdev, setup
Published: 2023-05-06 23:46:32


#### MACBOOK PRO SPECIFICATIONS
- 16-inch
- Apple M1 Max Pro
- 16 GB RAM
- 1TB SSD
- macOS Ventura



#### TECHNICAL STACK
- Front-End ( JavaScript, React, Vue, Next, Nuxt, Astro)
- Back-End ( Python, NodeJS, GO)
- Database ( PostgreSQL, MongoDB, Redis, Neo4j)
- Cloud ( AWS, Azure, Netlifly, Firebase, Linode, Vercel)
- Other ( Docker, Pulumi, Figma)

---
### First Step
- Browser: Download Firefox Developer Edition or Chrome, set to default.
  - Login to:
    - Github
    - Gmail
- Install Rosetta2

```bash
sudo softwareupdate --install-rosetta --agree-to-license
```
- Install Xcode command-line tools ( alternatively, manually download them from: https://developer.apple.com/download/all/)

```bash
xcode-select --install
```
- Install [Homebrew](https://brew.sh/)

```bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```

 - After installing Homebrew:

```bash
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/user_name/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
```
- Update everything in Homebrew:

```bash
brew update
```

### SYSTEM PREFERENCES

- General
  - Sharing
	  - "Change computer name." Local hostname -> Edit
	  - "Make sure all file sharing is disabled."
- Notifications
	- Off, except for Calendars and Reminders.
- Appearance
  - Show scroll bars -> "Always."
- Desktop Dock
  - Remove most applications from Dock
  - Size: Smaller Dock
  - Magnification: OFF
  - Automatic hide and show the Docke: ON
  - Show indicators for open applications: ON
  - Show recent applications in Dock: OFF
  - Automatically rearrange Space based on most recent use: OFF
  - Hot Conners: "disable all"
- Displays
  - Night Shift
- Control Center
  - Battery -> "Show in Menu Bar"
  - Battery -> "Show Percentage"
  - Menu Bar Only -> Spotlight: "Don't Show in Menu Bar"
  - Menu Bar Only -> Siri: "Don't Show in Menu Bar"
- Siri & Spotlight
  - Ask Siri: OFF
  - Disable Spotlight (Only if Alfred 5 will be instaled)
- Privacy & Scurity
  - Turn on FileVault
  - Add Browser to "Screen Recording"
- Keyboard
  -  Text Input
    -  Input Sources -> "Edit"
      -  disable "Capitalise word automatically"
      -  disable "Add period with double-space"
      -  disable "Use smart quotes and dashes"
      -  use " for double quotes
      -  use ' for single quotes
  - Keyboard Shortcuts
    - Spotlight -> "Show Spotlight search": OFF (Only if Alfred 5 will be instaled)
- Trackpad
   - Tap to Click
   - Look up & data detectors: OFF

### Finder
- General
  - New Finder windows show -> "user name"
- Hide all Tags
- Sidebar
  - activate all Favorites
  - move Library to Favorites
  - Resent Tags: OFF
- Advanced
  - Show all Filename Extensions: ON
  - Remove items from Trash after 30 days: ON


 ### SYSTEM PREFERENCES (TERMINAL)
 ```bash
# take screenshots as jpg (usually smaller size) and not png
defaults write com.apple.screencapture type jpg

# do not open previous previewed files (e.g. PDFs) when opening a new one
defaults write com.apple.Preview ApplePersistenceIgnoreState YES

# show Library folder
chflags nohidden ~/Library

# show hidden files
defaults write com.apple.finder AppleShowAllFiles YES

# show path bar
defaults write com.apple.finder ShowPathbar -bool true

# show status bar
defaults write com.apple.finder ShowStatusBar -bool true

# decrease launchpad icons size
defaults write com.apple.dock springboard-rows -int 7
defaults write com.apple.dock springboard-columns -int 6;killall Dock

killall Finder;
```

*Mac setup for web development inspired by [ROBIN WIERUCH](https://www.robinwieruch.de/mac-setup-web-development/)*