Skip to content

Instantly share code, notes, and snippets.

@clarencecastillo
Last active January 8, 2024 00:30
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save clarencecastillo/f764764abddf891167cf01285aab099e to your computer and use it in GitHub Desktop.
Save clarencecastillo/f764764abddf891167cf01285aab099e to your computer and use it in GitHub Desktop.

Mac Dev Setup

Personally curated and highly opinionated list of applications, software, tools and other stuff for macOS with instructions on how to install them.

I recommend spending some time exploring each app and carefully examine if they actually fit your needs. Downloading software you don't need unecessarily bloats your Mac with wasted space. If you already know what you need, use the index to quickly traverse this document.

If you want a more comprehensive list, check out:
awesome-mac
awesome-macOS

Installation

It is recommended (mandatory for some) to install and setup Homebrew and Homebrew Cask first so you can easily install applications via the terminal.

For .dmg files, double-click the file to mount the package and then drag the application binary to /Applications. Remember to unmount the file after copying the application binary.

For .pkg files, double-click the file and follow the Windows-style installation wizard which should be able to guide you throughout the entire setup.

For both .dmg and .pkg files, it should be safe to delete these files after the installation completes. Usually Finder automatically prompts the user to delete .pkg files after going through the wizard.

Accounts

For applications that require you to create an account, I recommend using a fresh account from Outlook, Gmail or Protonmail using the format firstnamelastname@domain.com. Among other email name formats, I suggest using this convention as it is easy to remember (in most instances) and provides a level of professionalism. Once you've got that setup, I suggest you use 1Password to generate and manage passwords for your other accounts (including changing the password of the one you just created).

Directory Structure

To keep folders organised, I suggest organising your user directory using the following structure:

~ (user directory)
|-- [Applications]
|-- Cloud
|   |-- Dropbox
|   |-- Google Drive
|   |-- MEGA Drive
|   |-- OneDrive
|-- [Desktop]
|-- [Documents]
|-- [Downloads]
|-- [Movies]
|-- [Music]
|-- [Pictures]
|-- [Public]
|-- Virtual Machines
|-- Workspaces

Directories enclosed in [] denote folders generated by macOS (you don't have to do anything). Folders to be syncrhonised by your selected Cloud Service go to ~/Cloud, virtual machine files created by Parallels Desktop or Virtual Box go to ~/Virtual Machines and your own projects segregated by project name or namespace go to ~/Workspaces.

Some applications will create hidden directories in your home folder. These folders are often prepended with . and are automatically managed by the owner application (ex. Atom creates ~/.atom to store configuration files).

Commercially Licensed Apps

Items marked with superscript numbers are commercially licensed. Support app developers by purchasing a valid license.

1 Exclusively free for students.
2 Buy it or ask nicely.
3 Paid subscription service.


Index

Text Editors & IDEs

Android Studio
Atom
CLion1
IntelliJ IDEA Ultimate1
PyCharm Professional1
Quiver2
Rider EAP1
Visual Studio Code
Visual Studio Community1
Xcode

CLI Utilities

Git
Homebrew
Homebrew Cask
iTerm2
mysql
ngrok
Node.js
Python
Python 3
sbt
sqlite
yarn

Developer Utilities

Dash2
Docker
GitKraken
JetBrains Toolbox
Nosqlclient
Paw2
Postman
Sequel Pro
SourceTree
Virtual Box

UI/UX Tools

Adobe InDesign2
Adobe Photoshop2
ColorSnapper 22
Pikka2
Polarr2
Sketch2
SkyFonts

Instant Messaging

Noti
Skype
Slack
Telegram
WeChat

Productivity

1Password3
Adobe Acrobat2
Evernote
Fantastical 22
FullContact2
Microsoft Office1
Moneydance2
Spark

Music/Video Players

PopcornTime
Spotify3
VLC

Games

Discord
Steam

File Storage & Sharing

Dropbox
Google Backup and Sync (Google Drive)
MEGAsync
OneDrive
uTorrent

Web Browsers

Firefox
Google Chrome

Utilities

Alfred 32
Android File Transfer
ApplePi-Baker
Background Music
Citrix Receiver
Etcher
FileZilla
Gemini2
GIF Brewery 3
Keyboard Maestro2
LICEcap
MaCleaner X2
Parallels Desktop2
Pulse Secure
SDFormatter
Spectacle
TeamViewer
Übersicht

Python Libraries

Beautiful Soup
Django
Pillow
Requests
Scrapy
Virtualenv

NPM Packages

Bower
Ionic
Yeoman

Atom Plugins

activate-power-mode
angularjs
atom-beautify
atom-typescript
autoclose-html
autocomplete-clang
autocomplete-java
autocomplete-json
autocomplete-python
broadcast
busy-signal
change-case
color-picker
copy-paste
dash
emmet
go-debug
go-plus
highlight-selected
intentions
language-docker
linter
linter-eslint
linter-ui-default
markdown-preview-plus
markdown-scroll-sync
markdown-themeable-pdf
markdown-writer
merge-conflicts
minimap
minimap-bookmarks
minimap-find-and-replace
minimap-git-diff
minimap-pigments
pdf-view
pigments
script

Chrome Extensions

1password
Adblock
Allow-Control-Allow-Origin: *
Bookmark Manager
Draw.io Desktop
MEGA
RateX
Toby


Text Editors & IDEs

Android Studio
The official IDE for Android, based on IntelliJ IDEA.

$ brew cask install android-studio

Atom
Customizable, plugin-based text editor made by GitHub. Good for quick text editing, scripting and web development.

$ brew cask install atom

CLion1
JetBrains' cross-platform IDE for C and C++.

See https://www.jetbrains.com/student/

IntelliJ IDEA Ultimate1
JetBrains' IDE for Java/Scala applications.

See https://www.jetbrains.com/student/

PyCharm Professional Edition1
JetBrains' IDE for highly structured Python applications.

See https://www.jetbrains.com/student/

Quiver2
The programmer's notebook that understands MarkDown.

https://mega.nz/#!U09iSTLJ

Rider EAP1
JetBrains' cross-platform IDE for .NET based solutions.

See https://www.jetbrains.com/student/

Visual Studio Code
Microsoft's lightweight text editor.

$ brew cask install visual-studio-code

Visual Studio Community1
Microsoft's IDE for Android, iOS, Windows, web and cloud.

$ brew cask install visual-studio

Xcode
Recommended IDE for iOS/OSX app development.

Install via App Store

CLI Utilities

Git
Distributed version control system.

$ brew install git

Homebrew
Universal package manager for macOS.

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrew Cask
Homebrew library for applications and large binaries.

$ brew tap caskroom/cask

iTerm2
A replacement for Terminal.

$ brew cask install iterm2

mysql
World's most popular open source database.

$ brew cask install mysql

ngrok
Expose local server to public via secure tunneling

$ brew cask install ngrok

Node.js
JavaScript runtime built on Chrome V8 JS engine. Installation is bundled together with NPM.

$ brew install node

Python
Easy yet powerful programming language.

$ brew install python

Python3
Version 3.x of Python.

$ brew install python3

sbt
The interactive build tool for Java/Scala applications.

$ brew install sbt

sqlite
A self-contained, embedded, SQL database engine.

$ brew cask install sqlite

Yarn
Better dependency manager for JavaScript applications.

$ brew install yarn

Developer Utilities

Dash2
Awesome API documentation browser and code snippet manager.

https://mega.nz/#!55Ni0TIL

Docker
Container platform for DevOps.

$ brew cask install docker

GitKraken
Axosoft's premium Git client.

$ brew cask install gitkraken

JetBrains Toolbox
JetBrains' application manager.

$ brew cask install jetbrains-toolbox

Nosqlclient
Open source GUI MongoDB management tool.

$ brew cask install mongoclient

Paw2
An advanced and powerful HTTP client. Mainly used for automated API testing.

https://mega.nz/#!I8ljnazJ

Postman
Quick and easy API testing.

$ brew cask install postman

Sequel Pro
Database management application for working with relational databases.

$ brew cask install sequel-pro

SourceTree
A free Git client by Atlassian.

$ brew cask install sourcetree

Virtual Box
General-purpose, lightweight virtualizer for x86 hardware.

$ brew cask install virtualbox

UI/UX Tools

Adobe InDesign2
Adobe's page design and layout tool.

https://mega.nz/#!Yo1nhZrA

Adobe Photoshop2
Adobe's professional image editing tool.

https://mega.nz/#!k98SRZha

ColorSnapper 22
Spotlight-style color picker and manager.

https://mega.nz/#!1gF2jCiA

Pikka2
Over-the-top color management.

https://mega.nz/#!chMCELSa

Polarr Photo Editor2
Quick auto-enhance tools and filters for your photos.

https://mega.nz/#!l5FAkIjK

Sketch2
Storyboard and artwork tool for application UI.

https://mega.nz/#!50tTwSBB

SkyFonts2
Font manager and downloader.

$ brew cask install skyfonts

Instant Messaging

Noti
Receive Android notifications on your mac (with PushBullet).

$ brew cask install noti

Skype
Instant messaging app mainly for online video calls.

$ brew cask install skype

Slack
Work communication channel.

$ brew cask install slack

Telegram
Desktop messaging app with a focus on security and speed.

$ brew cask install telegram-desktop

WeChat
Desktop client for WeChat.

Install via App Store

Productivity

1Password3
Cross-platform password manager.

$ brew cask install 1password

Adobe Acrobat Pro DC2
PDF editor.

https://mega.nz/#!h91GxJyB

Evernote
Cross-platform synchronised notebook.

$ brew cask install evernote

Fantastical 2
Better calendar app.

https://mega.nz/#!Z5VlQLqK

FullContact
Synced contacts manager.

Install via App Store

Microsoft Office1
Microsoft's iconic suite of office products.

See https://portal.office.com/

Moneydance2
Personal finance management app.

https://mega.nz/#!k18B3YTB

Spark
Smart email client for apple products.

$ brew cask install spark

Music/Video Players

PopcornTime
P2P based movie streaming app.

See https://popcorn-time.to/mac.html

Spotify3
Digital music service.

$ brew cask install spotify

VLC
Multi-purpose streaming and video playback software.

$ brew cask install vlc

Games

Discord
Skype for gamers.

$ brew cask install discord

Steam
Video game marketplace.

$ brew cask install steam

File Storage & Sharing

Dropbox
Cloud file hosting service starting at 2GB free storage.

$ brew cask install dropbox

Google Backup and Sync (Google Drive)
Cloud file hosting service starting at 15GB free storage.

$ brew cask install google-backup-and-sync

MEGAsync
Cloud file hosting service starting at 50GB free storage.

$ brew cask install megasync

OneDrive
Cloud file hosting service starting at 5GB free storage

$ brew cask install onedrive

uTorrent
Download movies, music and games via torrents.

See http://www.utorrent.com/

Web Browsers

Firefox
Fast, private and open source web browser.

$ brew cask install firefox

Chrome
Google's fast, secure and free web browser.

$ brew cask install google-chrome

Utilities

Alfred 32
A replacement for Spotlight.

https://mega.nz/#!NwsFULoA

Android File Transfer
Browse and transfer files between Mac and your Android device.

$ brew cask install android-file-transfer

ApplePi-Baker
Prepeares an SD-Card for use with RaspberryPi.

$ brew cask install applepi-baker

Background Music
Audio utility and per-application volume manager.

See https://github.com/kyleneideck/BackgroundMusic

Citrix Receiver
Access SCSE virtual desktops via this link.

See https://www.citrix.com/downloads/citrix-receiver/mac/receiver-for-mac-latest.html

Etcher
Create bootable usb from ISO files.

$ brew cask install etcher

FileZilla
FTP desktop client.

$ brew cask install filezilla

Gemini2
Find and remove duplicate images and videos.

https://mega.nz/#!lo1GxDCS

GIF Brewery 3
Create nice GIFs from video files quickly.

Install via App Store

Keyboard Maestro2
Macro-based workflow automation.

https://mega.nz/#!0x9HlAZD

LICEcap
Quick snippet recorder to GIF.

$ brew cask install licecap

MaCleaner X2
Cleans and removes unused files.

https://mega.nz/#!NwsiRD6D

Parallels Desktop2
Desktop and application virtualization.

https://mega.nz/#!BgFRTQzT

Pulse Secure
Preferred VPN client to access NTU intranet.

See https://www.pulsesecure.net/trynow/client-download/

SDFormatter
Formats SD card according specs by SD Association.

$ brew cask install sdformatter

Spectacle
Window control via customizable keyboard shortcuts.

$ brew cask install spectacle

TeamViewer
Easy cross-platform remote access application.

$ brew cask install teamviewer

Übersicht
Embedded desktop widget tool.

$ brew cask install ubersicht

Python Libraries

Beautiful Soup
Pull data out of HTML and XML files.

$ pip install beautifulsoup4

Django
Web framework for Python.

$ pip install Django

Pillow
Imaging library.

$ pip install Pillow

Requests
Nice HTTP Library for Python clients.

$ pip install requests

Scrapy
An open source and collaborative framework for extracting the data you need from websites.

$ pip install scrapy

Virtualenv
Create isolated Python environments.

$ pip install virtualenv

NPM Packages

Bower
A package manager for web applications.

$ npm install -g bower

Ionic
Build cross-platform mobile apps using web technologies.

$ npm install -g ionic cordova

Yeoman
Scaffolding tool for modern webapps.

$ npm install -g yo

Atom Plugins

activate-power-mode
Gameify your typing experience.

$ apm install activate-power-mode

angularjs
Autocomplete and snippets for AngularJS applications.

$ apm install angularjs

atom-beautify
Auto indentation and spacing of source codes in various languages.

$ apm install atom-beautify

atom-typescript
Autocomplete, live error analysis and other useful tools for developing in Typescript.

$ apm install atom-typescript

autoclose-html
Autoclose html tags.

$ apm install autoclose-html

autocomplete-clang
Autocomplete for C/C++/ObjC using clang-style autocompletion.

$ apm install autocomplete-clang

autocomplete-java
Autocomplete for Java.

$ apm install autocomplete-java

autocomplete-json
Semantic autocompletion for JSON files.

$ apm install autocomplete-json

autocomplete-python
Autocomplete for Python.

$ apm install autocomplete-python

broadcast
Streams your atom window onto a browser (via local server).

$ apm install broadcast

busy-signal
Provides an indicator that tells if a package is busy performing tasks.

$ apm install busy-signal

change-case
Change the casing of selected text.

$ apm install change-case

color-picker
Popup shortcut to select a color.

$ apm install color-picker

copy-paste
Types text in the clipboard character-by-character with random delay (simulated typing).

$ apm install copy-paste

dash
Dash documentation integration with atom.

$ apm install dash

emmet
Ultra fast coding to enhance HTML & CSS workflow.

$ apm install emmet

go-debug
Golang debugger in atom.

$ apm install go-debug

go-plus
Autocompletion and linting for golang.

$ apm install go-plus

highlight-selected
Highlights instances of the current word selected when double clicking.

$ apm install highlight-selected

intentions
Predicts and suggests your typings via intentions.

$ apm install intentions

language-docker
Dockerfile syntax highlighting.

$ apm install language-docker

linter
Base linter for linter packages. Analyses your code for errors before run/compile time.

$ apm install linter

linter-eslint
Linter for JavaScript.

$ apm install linter-eslint

linter-ui-default
Default UI for the Linter package.

$ apm install linter-ui-default

markdown-preview-plus
Previews opened markdown files in another tab.

$ apm install markdown-preview-plus

markdown-scroll-sync
Synchroises markdown preview tab scrolling with source.

$ apm install markdown-scroll-sync

markdown-themeable-pdf
Themable markdown converter to PDF, HTML, JPEG or PNG.

$ apm install markdown-themeable-pdf

markdown-writer
Syntax helper and format shortcut for writing markdown files.

$ apm install markdown-writer

merge-conflicts
Resolve git conflicts within Atom.

$ apm install merge-conflicts

minimap
Preview of the full source code as a mini sidebar.

$ apm install minimap

minimap-bookmarks
Displays atom bookmarks in the minimap.

$ apm install minimap-bookmarks

minimap-find-and-replace
Highlights search results in find and replace.

$ apm install minimap-find-and-replace

minimap-git-diff
Highlights and binds items for the git dif package.

$ apm install minimap-git-diff

minimap-pigments
Displays pigments colors in the minimap.

$ apm install minimap-pigments

pdf-view
Renders PDF files in atom.

$ apm install pdf-view

pigments
Changes the background color of colors (in RGB or HEX) in project and files.

$ apm install pigments

script
Mini terminal in atom.

$ apm install script

Chrome Extensions

1Password
1Password extension for Chrome.

Install via Chrome Web Store

Adblock
Blocks ads all over the web.

Install via Chrome Web Store

Allow-Control-Allow-Origin: *
Adds 'Allow-Control-Allow-Origin: *' to intercepted requests.

Install via Chrome Web Store

Bookmark Manager
Bookmark manager by Google.

Install via Chrome Web Store

Draw.io Desktop
Diagram editor.

Install via Chrome Web Store

MEGA
MEGASync extension for Chrome.

Install via Chrome Web Store

RateX
Low exchange rate for online shopping.

Install via Chrome Web Store

Toby
Bookmarks and tabs organiser.

Install via Chrome Web Store

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment