List of hardware, applications, and tools that make my macOS experience amazing, inspired by https://github.com/nikitavoloboev/my-mac-os (with shameless copy pasting (I hope that's ok 🙏🏼) where I couldn't find better wording).
Wallpaper: Icy land beside Jökulsárlón Lake
- Command Line Apps
- Preference Panes
- Similar Setups
Computer: 15" Late 2016 Macbook Pro with Touch bar.
Trackpad: Apple Magic Trackpad 2.
Monitor(s): 2x Dell U2417H.
- White Fox for work and programming.
- Microsoft Universal Foldable Keyboard for typing on the go.
- Filco Majestouch Ninja 2 for gaming.
I'm slowly transitioning to cross-platform software because I want to be able to use the majority of my apps on any OS.
Alfred - Launcher
Alfred is both my launcher, clipboard history manager, and entry point to lots of awesome workflows.
Here's a small example of me using it to quickly run/evaluate Ruby code:
Todoist - Simple and quick task manager
Todoist helps me plan out everything I want to do either for the short term or long term (I'm not sure if I follow GTD).
It also has global quick add with a hotkey. Together with lists, priorities, powerful search and a lot more.
Pipefy - Automation on boards and forms
- When I need something like Trello but with a lot more automation/power (e.g. having a public form, sending emails when things move to a certain column, triggering other actions, etc.)
1Password - Password manager
- Generate all of my passwords with it and keep everything in a secured and encrypted vault kept secure by a master password and two factor authentication.
- No longer need to remember passwords and I now have a unique password for every website that I am signed up on whilst activating two factor authentication wherever possible.
MindNode - Interactive Mind Mapping
- I write A LOT, too much actually, MindNode helps me write short summaries of my thoughts that I "connect the dots" (or lines) between.
PDF Expert - PDF reader/editor
- Super fast PDF viewer.
- Best experience for editing PDFs or filling PDF forms.
Contexts - Window switcher
- Allows me to fuzzy search through all the currently active windows that I have.
- Makes jumping to the right window I need effortless. I often may have many VS Code instances with different projects running and this lets me switch to the project I need in seconds.
Bartender - Menu bar organizer
- Allows you to customize and hide the contents of your menu bar and improve the aesthetics of your OS. Here is how mine looks:
Magnet - Organize your workspace
- Lets me use keyboard shortcuts (or more rarely, drag-drop to edges) to tile windows on my screen.
- Keyboard shortcuts to move windows across monitors.
Yoink - Simplify and Improve Drag and Drop on your Mac
- A small/quick utility I use to drop files from multiple locations/apps into to take an action on them later.
Little Snitch - Control incoming/outgoing network traffic
- Amazing networking tool that gives you a clear picture of what connections are incoming to your computer and what are outgoing.
- Takes a bit of time to set it up correctly and is quite an insightful experience first turning it on and having it notify every couple of seconds that some app is trying to send data to some server and whether you want to allow that.
- This is essential if you want to take control of what information gets sent out from your computer and what connections have right to connect to your data.
Visual Studio Code - Code editor
- My favorite editor that I use to write code in. I use many extensions for it.
- I use the Nord theme, Material Icon Theme and the Pragmata Pro font.
Here is how it looks:
Neovim - Powerful text editor
- Opening, editing, modifying, and searching through huge files.
- Go-to commandline text editor.
- I use vim-plug to manage plugins.
Hyper - Terminal Emulator
- I use Fish as my shell together with Fisher to install Fish plugins I use.
- You can find my dotfiles here.
- I use the Starship prompt and the Nord theme.
Dash - API Documentation Browser
- Allows you to download any docset that you might want to use, search for any method, class or anything that you need very quickly, comes with the amazing Alfred workflow to simplify the process of searching for the right things.
GitKraken - Git client
- Great cross-platform Git client that integrates well with GitHub, BitBucket, GitLab, and supports GitFlow.
Kaleidoscope - Powerful diff tool
- Really great, precise, and beautiful diffing.
- Great at viewing/merging conflicts.
- Can do directory and image diffs as well.
Textual - IRC Client
- The best macOS IRC client I've found.
Rambox - Open Source Multi-messaging App
- A single app I use for chatting with people on:
Slack - Work chat
- Chatting for work.
- Collaborating with people on some open source projects and great communities.
- I use the Nord theme for the sidebar and also apply a Nord stylesheet so everything looks Nord-ish.
It looks a bit like this (the screenshot is from the slack-nord-theme repo):
Spark - Email client
- Great dark theme.
- I approach all of my email tasks in GTD style. Keeping my email Inbox close to 0 at all times.
- Smart grouping of new emails.
- Quickly take batch actions.
Day One - Digital journal
- Day One is my digital life journal.
- If you don't journal, I suggest you to start, it is a very powerful mind cleanser and acts as a wonderful history record of your life.
Typora - Smart WYSIWYG distraction-free markdown editor
- Smart WYSIWYG editor, no need for an editing and preview views like most markdown editors, it's just one view.
- Distraction-free markdown editor, I use it when I want absolute focus.
- Beautiful themes, and even one that supports RTL.
- I use it to edit my wiki.
Notion - Large writing, scans, and web clips
It's very hard to describe exactly what Notion does, but it's basically a workspace for everything and I'm trying to move everything to it.
- I do my huge writing here.
- If I want to access a document from anywhere, I usually store it here.
- Personal project management.
- Managing lists of things I want to buy, sell, and games I want to play.
- I also use it to keep a list of public Notion pages with ideas I'm working on and more.
Google Play Music - Music Streaming
- My goto music streaming solution.
- Easiest for me to setup from where I live (Saudi Arabia).
YouTube Music - Music Streaming 2nd solution
- Google Play Music will most likely be merged with this, so it might be best to get used to it.
- I use it on the rare occasion that I don't find something on Google Play Music.
Google Photos - Cloud storage for photos
- Easiest way to backup my photos and access them from multiple places.
- Machine learning, auto detects images.
😖Kind of scary.
xScope - Measure. Inspect. Test.
- A powerful set of tools for Mac OS X that are ideal for measuring, aligning and inspecting on-screen graphics and layouts.
Dato - Better clock/calendar widget for menubar
- More configurable than Apple's default widget.
- Has a great calendar popup that shows when you click date/time in the menubar. This is something I was really used to from Windows/Linux that I'm glad to have back again.
- Can show calendar events
TablePlus - Modern, Native Tool for Database Management
- Available for many platforms (Mac, Linux, Windows, and iOS so far).
- Supports many databases (MySQL, PostgreSQL, MongoDB, SQLite, Redis, Cassandra, and more).
- Intelligent autocomplete and great filtering utilities.
- Frequently updated and well-maintained.
Insomnia - Great API tool
- Full-featured HTTP client that lets you test and describe the APIs you build or consume.
- Open source.
- Themeable, I use the Nord theme here as well.
- My main web browser because it easily syncs my extensions across machines.
- I use these extensions and this theme.
- Incredibly fast/lightweight web browser.
- Since I don't have extensions on it, I use it for when my Chrome extensions break sites.
Command Line Apps
- autojump - A cd command that learns, easily navigate directories from the command line.
- asdf - One version manager for all my programming languages.
- fzf - Command-line fuzzy finder.
- colorls - Beautify
lscommand with color and font-awesome icons.
- bat - Cat clone with wings.
- git - Version control.
- curl - Transfer data from or to a server.
- htop - Interactive text-mode process viewer for Unix systems.
- httpie - HTTP client.
- curl - Transfer data, supports various protocols.
- howdoi - Instant coding answers.
- asciinema - Terminal session recorder.
- tldr - Simplified and community-driven man pages.
- now - Real time global deployments served over HTTP/2.
- yarn - Fast, reliable, and secure dependency management.
- hub - GitHub wrapper.
- xsv - Fast CSV command line toolkit written in Rust.
- GPG Suite - Encrypt, decrypt, sign and verify files or messages.
- I use this also for signing my commits.
Here you can find more setups by other people that you can take ideas and inspiration from.
- The original
my-mac-os- The original repo that acted as inspiration for me to build this one.
- Works for me - Collection of developer toolkits.
- Use This Interviews - What do people use to get stuff done?
If you shared a similar personal setup to this, be it for Windows, Linux or anything else, you can add it in Similar Setups section.
I love finding new awesome tools and apps. If you have a favorite tool or app that you think I missed, please say it.