When setting up a new MacBook, here is roughly the series of steps / applications I download in order to get the system in an optimal state for me to develop properly.
- Disable Look up/dictionary click.
- Enable tab to click.
- Disable "Automatically rearrange Spaces based on most recent use"
- Enable "Play feedback when volume is changed"
- Under "Zoom", enable "Use scroll gesture with modifier keys to zoom", setting the key to ^Control.
- Under "Display", slightly bump the contrast and cursor size (based on displays being used).
- Under "Mouse & Trackpad", click "Trackpad Options", then enable dragging via three-finger drag.
Spectacle- Deprecated- Rectangle - Vital app for moving/resizing windows around the screen.
- Spark - Sexy email client.
- VS Code - Prefered code editor.
- iTerm2 - Prefered terminal client.
- Insomnia - Tool for testing APIs (REST & GraphQL).
- Slack - Slack, for work and fun.
- Pock - App for customizing the macOS Touch Bar.
- Amphetamine - Keep your Mac awake, on demand.
- GPG Tools - Manager for GPG keys.
- NordVPN - A nice VPN.
- Signal - For chatting with pals.
- Memory Diag - Helps with memory management.
- Monitor Control - Control external monitor brightness, contrast or volume via keyboard native keys.
Homebrew is a must-have for any macOS system. Install it using the following command, then let's install some stuff:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install ack
-ack
is likegrep
, but much nicer.sudo easy_install Pygments
-Pygments
Better syntax highlighting, for this command.brew install tree
-tree
is a nice tree view for the current directory.
Gotta have NodeJS! The best way to install and manage it is using Node Version Manager (nvm
). Install it like so:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash
You can then proceed to install Node. Run nvm ls-remote
to list remote versions of node versions.
Note: After installing node, all future versions should be installed using this commamnd. This will install the new version, and all the globally installed packages.
Now that Deno is stable/v1, install it so that we can use it for new projects moving forward.
brew install deno
Please check out this dotfiles repository for info on the dotfiles. It includes a .profile
, along with various .alises
and .functions
which I usually use. It also includes the starship
configuration I use (see below).
Install starship
.
brew install starship
This is a handy terminal tool with some neat features. It has its own starship.toml
config file that you can find in my dotfiles.
- Atom Keymap - Inherit a lot of Atom's keymappings.
- Atom One Dark Theme - Nice theme.
- Material Icon Theme - Better icons, with support for oodles of extensions.
- GitLens - Adds lots of built-in git goodies, such as viewing who last edited a line.
- Bracket Pair Colorizer - Makes matching brackets have the same color, making code blocks easier to see.
- ESLint - ESLint in VSCode.
- npm Intellisense - Autocompletes npm modules in import statements.
- Svelte - Adds Svelte language support.
- Svelte Intellisense - Adds Svelte intellisense support.
- ES7 React/Redux Snippets - Some good snippets for React & Redux. Currently looking for a better replacement.
- Go - Adds language support for the Go language to VS Code.
- Chrome Debugger - Debug code running in Google Chrome from VS Code.
- Rainbow CSV - Make CSVs pretty again!
- Sort JS Object Keys - Alphabetize JS object keys.
- Markdown Lint - Lint markdown files for common pitfalls.
- Indent 4-to-2 - Simplify converting indentation of tab or 4 spaces into 2 spaces.
There are a few key mappings which I prefer to set when setting up VS Code. Hit SHIFT
+ CMD
+ P
to pull up the commands pallet, then select Preferences: Open Keyboard Shortcuts.
- Move Line Down -
^
+⌥
+↓
- Move Line Up -
^
+⌥
+↑
Use the Cascadia font from Microsoft. Download this .ttf
file, install the font on your Mac by opening the file, and then in VSCode open up the settings UI and add the following as the font-family
:
'Cascadia Mono PL', Menlo, Monaco, 'Courier New', monospace
Use the provided colour pallet. You can add them under Preferences > Profiles > Colors > Color Presets > Import.
Under Preferences > Profiles > Keys, alter the following two key combos:
⌥
+ ⬅️ - Send Escape Sequenceb
⌥
+ ➡ - Send Escape Sequencef
In order to use starship
, you'll need a Nerd Font that supports the glyphs to be used in the terminal. I prefer the Cascadia
variant. You can add it to iTerm via Profiles > Text.
✌️ Made by Dave.