Skip to content

shahrviral/Mac-Setup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 

Repository files navigation

Mac Setup

A foreword

I am a mac app enthusiast who really enjoys trying new apps to see what best fits into my workflow. This originally started as, and still remains a reference for me when I setup a new computer, but I hope this helps others find what they need without having to try everything. For the apps listed below, I was not compensated in any way. These are just the apps I use on a daily basis or use to use in the past. I try to prefer free solutions but occassionally I end up coming across a nice deal for a paid app which I can purchase at a price that is affordable. I try to avoid subscriptions unless I absolutely have to. I think the most expensive app I have purchased is Alfred.

Anyone who wants can buy me a 📘️ or 🍺️ or app on https://www.buymeacoffee.com/viralshah. I plan on creating a complete website to showcase these in the near future and try out new apps that I hear about.

⭐️ Personal Recommendation

🏆️ Must Have

💰️ Paid

🔄 Subscription

❤️ Free

🔑️ Free Prepetual Trial / Freemeium

🛍️ Ad Supported

Fonts

Software

Password Managemnt 🏆️

Investing in a good password manager is the one thing everyone should take away from this list. It is incredibly important that everyone uses safe, secure, and unique passwords across all their accounts. Humans are terrible at memorizing snippets of random numbers, characters, and symbols, and we compensate by taking shortcuts which can be exploited. It doesn't matter if you go with LastPass, 1Password, Enpass, BitWarden, Dashlane, etc; anything, just please use something. Most password managers are quite affordable, or have free limited trials. Here are my personal recommendations

Compression & Encryption

The default compression app "Archive Utility" is good, but still lacking in terms of some advanced features. There are plenty of compression apps avaliable on the market, I am partial to the ones below. Keka is a beautiful app, while BetterZip provides a way to preview the contents of a directory.

File Management

Working with files is at the heart of what we do on a day to day basis. Finder is great, but there are certain features which are missing. Features like having 2 panes for easy drag and drop and a shelf collect all the files your want without having to click and hold are indespensible.

Photography

There are a ton of very powerful apps out there for photography, and I use many of them, but for day to day work they are a bit too much. These basic apps, along with the built in "Photos" app, are a good place to start.

Maintenance & Cleanup

There is a constant debate on whether or not you need keep your mac meticiulousely clean. Whether it's enough to drag an application to the trash to uninstall it or if you should remove all the files it leaves behind. I am partial to the latter methodology. The following apps help keep the Mac nice and clean, and allow for the user to customize everything from where screenshots are stored to how caches are managed.

Desktop & Menubar Enhancement

You see your desktop and menu bar all the time, and there is so much more that you can do then what meets the eye. The following apps are designed to add common features like window snapping, working with dates and times, toggling common settings.

Screenshots & Screen Recording

The OSX ecosystem comes with some very powerful screen capture utilities built in, but these are a good supplement which address any remaining shortcomings.

Audio & Video

The default "QuickTime Player" leaves something to be desired in terms of compatibility. The following apps are designed to fill in that gap.

Clipboard & Text Manipulation

Once you start using a clipboard manager, you will never be able to live without one. It is incredibly powerful to have one and saves a ton of time boosting productivity. Similarly text expansion and OCR are extremely useful.

Productivity

The mac comes with a very powerful suite of productivity apps. The iWork suite along with Preview are plenty for normal use, but these apps make working even easier.

Utilities

These are some very powerful utilities which can make your mac behave more of how you would want it to. They serve very specific but common usecases.

A word about Alfred. Is is an incredible powerful app, and an incredibly expensive one as well. The freemium version is a great place to start and I strongly reccomend it. Take a look at the "Powerpack" it has features which overlap with several other apps. I personally bought it and use several of the features but you can get similar features from a collection of other free and paid apps as well.

Communication:

Browsers

Development

Command Line

XCode Command Line Tools

  • XCode Command Line Tools: Essential tools xcode-select --install

Homebrew

Commands

  • List user installed packages: brew leaves
  • List user installed packages and their dependencies: brew leaves | xargs brew deps --installed --for-each | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"\
  • List user installed cask packages and their dependencies: brew cask leaves | xargs brew deps --installed --for-each | sed "s/^.*:/$(tput setaf 4)&$(tput sgr0)/"\n

Packages

  • ffmpeg: Manipulate audio and video brew install ffmpeg
  • git: Git version control brew install git
  • gradle: Gradle dependency management brew install gradle
  • httpie: CLI rest client brew install httpie
  • jenv: Manage java installations brew install jenv
  • rename: Perl powered renamer brew install rename
  • the_silver_searcher: Fast file search brew install the silver searcher
  • trash: Move files to trash brew install trash
  • tree: List directory trees brew install tree
  • vim: Vim text editor brew install vim
  • watch: Periodically execute command brew install watch
  • wget: Internet file retriever brew install wget
  • yajl: CLI json manipulation brew install yajl
  • youtube-dl: Internet video downloader brew install youtube-dl
  • python: Python language brew install python@<version>
Kubernetes
  • yq: yaml document processor brew install yq
  • kubernetes-cli: Manage Kubernetes clusters brew install kubernetes-cli
  • helm: Helm deployments manager brew install helm

Taps

  • AdoptOpenJDK Tap: Repository for openjdk casks brew tap AdoptOpenJDK/openjdk

Casks

  • adoptopenjdk11: OpenJDK 11brew cask install adoptopenjdk11
  • adoptopenjdk8 OpenJDK 8brew cask install adoptopenjdk8

Oh My Zsh

NVM

Aliases

  • Youtube Downloader
    • alias ytdl='youtube-dl '
  • Brew Aliases
    • alias brewup='brew update; brew upgrade; brew cleanup -s; brew doctor'
  • Python Aliases
    • alias activate='source venv/bin/activate'
    • alias venv='python3 -m venv venv && source venv/bin/activate && pip install --upgrade pip'
  • Gradle Alias
    • alias gw='./gradlew'
  • Misc Aliases
    • alias watch='watch '
    • alias usage='du -h -d1'
    • alias runp="lsof -i "

Kubernetes Krew

Plugins

  • ns: Configure namespace for cluster kubectl krew install ns
  • tail: Tail logs in cluster kubectl krew install tail

Extensions

Firefox

Brave

Custom Configs

Firefox:

  • Enable Smooth Pinch Zooming: apz.allow_zooming=true

Iterm2

  • Use Minimal theme: Appearance > General > Theme > Minimal
  • Open new tabs in current directory: Profiles > General > Working Directory > Reuse previous session's directory
  • Use vertical cursor bar: Profiles > Text > Cursor > Vertical bar
  • Enable blinking cursor: Profiles > Text > Cursor > Blinking cursor
  • Use MesloLGS NF font: Profiles > Text > Font > MesloLGS NF
  • Enable window transparency: Profiles > Window > Window Transparency > 25%
  • Enable unlimited scrollback: Profiles > Terminal > Scrollback Buffer > Unlimited scrollback
  • Turn off sound bell notification: Profiles > Terminal > Notifications > Silence bell
  • User Natural Text Editing key bindings: Profiles > Keys > Key Mappings > Presets > Natural Text Editing

Forklift

Set Forklift as default file viewer

defaults write -g NSFileViewer -string com.binarynights.ForkLift-3;
defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add '{LSHandlerContentType="public.folder";LSHandlerRoleAll="com.binarynights.ForkLift-3";}'

Restart computer

Restore Finder as default file viewer

defaults delete -g NSFileViewer`
defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add '{LSHandlerContentType="public.folder";LSHandlerRoleAll="com.apple.finder";}'

Restart computer

VS Code Extensions

  • Auto Close Tag by Jun Han: Automatically add html/xml closing tags
  • Auto Rename Tag by Jun Han: Automatically rename paired html/xml tags
  • Bracket Pair Colorizer by CoenraadS: Color code matching brackets
  • indent-rainbow by oderwat: Add colors to different indentations
  • Text Power Tools by Daniel Tar: Powerfull text manipulation
  • Git Lens--Git supercharged by Eric Anidui: Add advanced Git capabilities
  • ESLint by Dirk Baeumer: ESLint JavaScript integration
  • JavaScript (ES6) code snippets by charalampos karypidis: Code snippets for JavaScript in ES6 syntax
  • Live Server by Ritwick Dey: Launch local development server with live reload
  • Paste JSON as Code by quicktype: Copy JSON and generate classes/types in various languages
  • Prettier - Code formatter by Prettier: Code formatter
  • vscode-icons by VSCode Icons Team: Icons for VS Code
  • Todo+: Manage todo text based todo lists

IntelliJ Idea Plugins

Global Node Packages

  • typescript: Add support for Typescript npm i -g typescript
  • ts-node-dev: Add support for hot reloading typescript npm i -g ts-node-dev