Whenever I get a new Mac or decide to wipe it and start afresh the following are my go-to tools and software for both web development and general work.
Command Line Tools
I love iTerm it's a fantastic terminal interface, it's easy to customise and add shortcuts keys to.
Brew is a brilliant package manager for Mac, I use HomeBrew to install software such as PHP and MySQL.
GIT comes installed with Mac before using GIT it's important to set your name and email address. This is important because every Git commit uses this information, and it’s immutably baked into the commits you start creating:
$ git config --global user.name "John Doe" $ git config --global user.email email@example.com
Package manager for PHP, every project I work with uses Composer so it's a much to install.
Adding composer to bash_profile
Open bash profile with VIM
Press I to enter insert mode
Next, add compost tp PATH by writing:
Then press escape to normal mode then :wq to save and quit.
Install PHP 7.3
brew install firstname.lastname@example.org
Enable php to run as a service
brew services start php
Install MySQL 5.7
brew install email@example.com
Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with thousands of helpful functions, helpers, plugins, themes
To change themes open zsh profile
This is is a different from bash_profile composer will need adding to the zsh profile
When working locally I use Valet to run my php projects Valet is a development environment that allows you to server custom domain for your local projects for instance instead of using http://localhost:8888/someproject I can use http://someproject.localhost
You can install Laravel using composer via the create command:
composer create-project --prefer-dist laravel/laravel blog
but with the Laravel Installer you can simply do:
laravel new blog
I use Dropbox to store my files but I don't install the Dropbox installer instead I use Cloud Mounter to mount Dropbox to finder. Then I can see access my files as if they were on my machine. This adds the benefit of not filling up my hard drive.
I've tried lots of editors and IDE's over the years but I always go back to Sublime Text I find it the best for my needs, I always extend it with the following:
Adds the ability to install plugins
Works with SSH, FTP and SFTP
I use Wakatime to track how much time I spend coding, my whole team uses it so it's great to see how we all compare.
This plugin adds more options to the sidebar, it's essential.
Boxytheme - blue ocean
This is my theme of choice!
Laravel blade highlighter
Adds syntax highlighting for Blade views
Add's a terminal interface to Sublime
In addition it's useful to open folders in Sublime using sublime . in terminal.
Adding shortcut to open folder in sublime - https://gist.github.com/adrianorsouza/df4759b0583dcd112da4
ln -sv "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
Remote manage MySQL databases
PHP 7.2 Install via Brew:
brew install php72
MySQL 5.6 - https://gist.github.com/nrollr/3f57fc15ded7dddddcc4e82fe137b58e
brew install mysql
For all image editing needs.
When recording my screen for making tutorials I've found nothing better then Screenflow.
I use Alfred instead of Spotlight for the following features:
- Searching Google
- Searching Files and Folders
- Code Snippets
- Clipboard History
These 2 worksflows I use often:
I use 1Password for generating and storing all my passwords and 2 factor authentication for websites and applications.