# MacBook Pro M1 Developer Setup 2022

I just picked up a new MacBook Pro M1 and decided to take this opportunity to document all of the various applications that I use on a daily basis.

# Brave
My go to browser for the past year has been [Brave](https://brave.com/). As a web developer, it offers me everything that Chrome offers, but seems to run more efficiently and I [earn rewards simply by browsing](https://brave.com/brave-rewards/)

# Notion
[Notion](https://www.notion.so/) is my second brain. This is where I organize all of my thoughts, ideas, personal projects, todo lists, work, finances, etc.

# Alfred
[Alfred](https://www.alfredapp.com/) is a better Spotlight. I don't even use the dock anymore. Everything I do on my MacBook starts with CMD+SPACE. You can configure Alfred to index your entire hard-drive, which makes searching and opening individual files super easy.

# Slack
All work comms go through [Slack](https://slack.com/). It's basically replaced email for me.

# Spectacle
I used to be a Windows dev and one thing I immediately missed when switching to a MacBook was window snapping. [Spectacle](https://www.spectacleapp.com/) is the missing window snapping tool for MacBook. I use CMD + OPTION + ← OR → to snap windows to the left or right of my screen.

# Visual Studio Code
[Visual Studio Code](https://code.visualstudio.com/) has everything I need to work full-stack. I do all of my coding from this single IDE.

## Extensions
* [vscode-icons](https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons)
* [prettier-vscode](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)
* [gitlens](https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens)
* [es7-snippets](https://marketplace.visualstudio.com/items?itemName=dsznajder.es7-react-js-snippets)
* [night wolf theme](https://marketplace.visualstudio.com/items?itemName=MaoSantaella.night-wolf)
* [github-copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot)

# Canva
I have literally zero artistic ability. [Canva](https://www.canva.com/download/mac/) makes it super simple to create graphics for blog posts, Twitter, etc.

# Spotify
Let's be real, if you aren't jamming out [on Spotify](https://www.spotify.com/us/download/mac/) while coding, are you even coding? Personally, I love LOFI. Haters may hate.

# ITerm2
[ITerm2](https://iterm2.com/) is the must-have terminal upgrade. I've been using it for years. It includes features such as autocomplete, search, and many other configuration settings.

# Oh My Zsh
[Oh My Zsh](https://ohmyz.sh/) is an open source, community-driven framework for managing your Zsh configuration. It did for the terminal what React did for JavaScript. It basically gives your terminal a framework within which you can customize everything.

# Powerlevel10k
Ever wonder how content creators make their terminal look almost futuristic? Check out [Powerlevel10k](https://github.com/romkatv/powerlevel10k#oh-my-zsh). It has a great configuration wizard, performance, and customizations to make your terminal awesome.

# Fig.io
[Fig.io](https://fig.io/) adds IDE-style autocomplete to your existing terminal. I use tab-completion all the time, and Fig brings this to a whole other level.

# AWS CLI
I do a ton of work in AWS, and the majority of my interactions are done via [the AWS CLI](https://aws.amazon.com/cli/).

# XCode
Get it from the App Store. I need it for mobile app development.

# NVM
Full-stack TypeScript developer here, and [NVM is a must have](https://github.com/nvm-sh/nvm#installing-and-updating).
 * `nvm install --lts`
 * `npm install -g npm` # Upgrades to latest NPM for LTS.
 * `which node`
 * `which npm`

# Global NPM Packages
I like to install the following packages globally rather than using `npx` because I find that fig.io works better for these when installed.
 * `npm install -g cdk`
 * `npm install -g expo-cli`
 * `npm install -g yarn`

# Zoom
What can I say? [Zoom](https://zoom.us/download#client_4meeting) seems to have won the video conference battle. It works great.

That's it as of now. I'll update this if any new software comes along that I can't live without!

# Loom
Like Zoom, but with an L! [Loom](https://www.loom.com/) is fantastic for shooting demo videos of new features and sharing them with the team.

# Discord
Can you ever have too many chat programs? Honestly, if I had my way, I'd exclusively use [Discord](https://discord.com/) for everything.

# Docker
I'm big into Serverless technologies, so I thought I was going to get away with not needing [Docker](https://www.docker.com/products/docker-desktop/). However, I've recently started to use [Supabase](https://supabase.com), which requires docker to run locally.

# Supabase CLI
[Supabase](https://supabase.com/docs/guides/local-development) makes me feel like I have superhero powers. I click 2 buttons and get a Postgres database, authentication, row-level security, APIs, serverless functions, and blob storage. Seriously Supabase, y'all outdid yourselves.

If you like this content please consider following me at https://twitter.com/thealexkates



