List of applications and tools that make my macOS experience even more amazing
All the apps are in one desktop because there is delay in switching between macOS multiple desktops
- Command Line Apps
- Preference Panes
- My wonderful world of iOS
- Similar Setups
I use a lot of applications on my mac. Below is a list of the ones that I love and use the most in my day to day life.
Alfred - Launcher
- Alfred is a powerful launcher that you can program to show anything you want. It saved me a lot of time in my life.
Karabiner - Keyboard remapping
- Karabiner is an absolutely amazing app that lets you remap keys at a very low level on macOS.
- I have completely remapped my keyboard with it and every key on my keyboard is a custom modifier key that I can program to do what I want.
- For example you can make caps lock into an escape key when pressed once but if you hold it, it becomes a hyper key. Hyper key means that a key now serves two purposes, once when pressed alone and once when held down. So for example, for remapping caps lock, we can remap it to act as escape when pressed alone once but if we hold down on it, it becomes
⌘ + ⌃modifier key. So
Caps Lock + Fbecomes
⌘ + ⌃ + F. And so on.
- I take this idea further and define these kind of hyper keys for every single key on my keyboard.
- I describe how I use Karabiner in detail here and I generate my configuration with a Karabiner DSL.
Keyboard Maestro - Automation tool
- Keyboard Maestro is essentially an IDE for automation. You create macros of actions that you can then easily call from Karabiner.
- It has a wonderful community that is happy to help with whatever you are trying to achieve.
- I share all the macros I use with the app.
2Do - Flexible task manager
- I love GTD methodology. This app is phenomenal with helping me organize my tasks. Here is how my sidebar looks:
- It also has global quick add with a hotkey. Together with lists, priorities, powerful search and a lot more.
Trello - Project management tool
- I use the app a lot to track various projects I have in my life.
- I share many boards I made publicly. Here is an example of a public board for tracking various things I want to learn.
- I assign myself to the cards I am working on now and filter to see only them by pressing Q key. I mark cards I want to work on next with
1Password - Password manager
- Generate all of my passwords with it and keep everything in a secured and encrypted vault kept secure by my one master password.
- 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.
Timing - Automatic time tracker
- I use Timing app to fully automate tracking my time on my computer.
- The fact that I can combine active and passive tracking together is very powerful and allows me to be more aware of where I spend my time.
MindNode - Interactive Mind Mapping
- An application which allowed me to originally create all of the maps for Learn Anything.
- I also use MindNode to visualize topics and their relations as an interactive mind map. I use Monokai Night theme for it.
Typinator - Text expansions
- I use the app to fully automate writing repetitive text.
- I share all the Typinator sets I made with the app here.
BetterTouchTool - Mac input customizer
- I use this app a lot for mapping various trackpad gestures to hotkeys and actions both globally and per specific apps.
- I love scrolling through my tabs in Safari with three finger swipes left and right as well as opening and closing tabs with swiping up and down respectively.
- I share all the different gestures I have setup to use with the app that you can view and download.
- I also use the app to modify how my TouchBar looks.
PDF Expert - PDF reader/editor
- I read a lot of PDFs like books, research papers and the like. This app is a huge upgrade over Preview app that I used before.
- Multiple tabs, sepia mode, very nice annotation tools, great search, performance.
Fantastical - Calendar
- I use the app to manage events in my life.
- I take great use of Fantastical's natural language input and I use many Typinator expansions to ease this process.
- I always view my events from
Weekview. And show 5 days only with all 24h shown for all days. This lets me have a perspective over what I have to do now. What deadlines I have to complete soon. And gives me the freedom to adjust my schedule in light of upcoming deadlines and events.
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.
TaskPaper - Plain text TODOs
- Comes natively with macOS and I started to love using it for exploring and searching through Wikipedia.
- It is incredibly fast to make the searches and it gives quick autosuggestions for any query I type that I can then select with up and down arrows.
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:
- My menu bar is always hidden so I rarely ever use it and I show most needed info on the TouchBar instead.
Focus - Block distracting websites
- I use Focus app as a recurring pomodoro timer which lets me work in sessions of 80 minutes with 10 min breaks by blocking distracting websites and apps.
- If I go to any of my blocked websites during my
Focustime, I am greeted with this message.
Annotate - Create and annotate screenshots
- Best annotation tool I found to exist. After you make a screenshot, it allows for quick edits. Adding arrows, some text, blurring parts of the image as well as ability to quickly save the image or drag it to Dropzone to upload to Imgur to share the link quickly with anyone I want.
Popclip - iOS like mouse text selection popover
- Another great utility I cannot live without, brings up a quick menu whenever some text is selected on which I can do a number of quick actions, like searching on Google, DuckDuckGo, YouTube, Dictionary, Reddit, Google Images or it can translate text selected, copy it or even make a SnippetsLab snippet from it. Here is how it looks for me:
- I share all the extensions I use with it here.
Noizio - Ambient sounds
- I sometimes like listening to sounds of rain, train or fire to focus. Although Nils Frahm is better.
Hammerspoon - Automation tool
- Powerful automation engine I am still exploring. My config for it can be seen here.
Reeder - RSS Reeder
- The app I use to keep up with my RSS feeds. I use RSS to follow my favorite blogs, stay up to date on new podcast episodes and even track some software releases.
- I use Inoreader to sync blogs I follow between phone and mac.
- Here is how Reeder looks like for me:
Dropzone - Drag and drop actions
- A quick utility that pops up when I drag some file into it or open it with a hotkey, use it to upload images to Imgur, dropping files into a preset number of folders that I made quickly as well as going to them in an instant.
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 the right to connect to your data.
BeardedSpice - Extend Mac Media Keys
- Enhance play/pause as well as previous/next playback keys to not only work in iTunes and Spotify but work for SoundCloud, YouTube and many other services.
Transmission - BitTorrent client
- A torrent client that I use. Very minimal in its UI but very powerful and has all the features that I need.
Transmit - Transfer files
- I sometimes use this app to quickly send files from my local file system to the cloud and get a shareable link I can send to people.
- I use this Alfred workflow to quickly open the cloud storage I need.
- Use the app to store the many vegan recipes I like to make.
VS Code - Code editor
- My favorite editor that I use to write code in. I use many extensions for it.
- My config for it can be found here.
- I use VS Code Monokai Night theme with Fira Code font. Here is how it looks:
iTerm - Terminal Emulator
- Use Zsh as my shell together with Antibody to install Zsh plugins I use.
- Assigned w + j with Karabiner to open the app from Keyboard Maestro in seconds.
- I made my own Monokai Night theme for it.
- I also love using this workflow to quickly switch between active tty sessions.
- I go over how I use the app here.
Sublime Text - Text Editor
- Use this editor in addition to VS Code and Neovim for its blazing fast speed of opening files.
- I use it primarily to edit markdown files like my wiki. I also edit config files and open large and small files for quick edits.
- I use many plugins together with Ayu 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.
- I also use this workflow I made to quickly switch between Dash profiles.
SnippetsLab - Snippet manager
- I use the app to manage my own personal library of snippets. I prefix all snippets I make. For example vim snippets are prefixed with
vim:. Git related snippets with
git:and so on.
- The app also provides an awesome Assistant to quickly search through the snippet database:
Here is how my library looks:
- I share my entire library of snippets as GitHub Gists.
Tower - Git client
- Use the app to help me version control any project I am working on. Love the ability to search through commits, check out branches with ease and searching through all the Git repositories I have on my mac with quick search.
Paw - HTTP client
- Use the tool to quickly make HTTP requests and test out API endpoints.
Neovim - Text Editor
- The best text editing experience you will ever get. It is worth learning it as you will start thinking about text editing differently.
- I use some kind of vim bindings in any app I use and if there is a vim plugin for the app, I often use it. I use vim editor often when connecting to remote sessions and when I need a console editor.
- My Neovim config can be seen here. I use Monokai Night theme with many plugins. Here is how it looks:
Bee - GitHub Issue Tracker
- Use the app to stay on top of all issues across my GitHub repos. All issues I want to work on soon are put into Next queue and I work through each one, one by one.
Textual - IRC Client
- I love IRC and this is the best macOS client for it.
- I created my own Monokai Night theme for it that I love.
- The app also has an awesome channel search feature that I use a lot.
Telegram - Messenger
- The app has a very clean interface, a native client for macOS and stickers. Chats are not encrypted by default and don't use approved cryptography but the client is amazing and fast.
Spark - Email client
- Love how it smartly categorizes emails by categories.
- I approach all of my email tasks in GTD style. Keeping my email Inbox close to 0 at all times.
Tweetbot - Twitter client
- I use the app to stay up to date and communicate on Twitter.
- Tweetbot is also blocked for me during my Focus time. I can only post tweets but I can't visit the app to see my feeds.
- Twitter is my primary way to stay up to date on things and is my favorite social network after GitHub. I curate and publicly share all Twitter lists I personally use.
- I have Tweetbot open in full screen with three columns (Mentions/Top/Top 2). Here is how that looks for me:
Day One - Digital journal
- Day One is my digital life journal.
- My entire life's experiences lives encrypted in the journal. Adding photographs I made, the thoughts I had and events that happened to me.
- I document and review my life publicly too.
- The app has integration with IFTTT which I use to automatically log all my tweets and Instagram posts.
- 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.
Marked - Preview rendered markdown files
- If I ever need to preview a readme or any other markdown file that I wrote or just want to read, this app is the best application for that I found. It also features live updating and quite a lot of customizable features.
Sketch - Design tool
- Use the app to quickly prototype new designs. I also enjoy using Figma a lot.
Sip - Collect, organize & share colors
- A great color picker I use to collect my favorite colors and color schemes.
PixelSnap - Measure everything on screen
- Use it to quickly get measurements of objects and distances between elements.
Spotify - Music streaming
- Found a lot of great music with this application and the phenomenal Alfred Workflow makes using the application an absolute joy.
- Quickly finding artists, songs I want to listen, instantly adding the song playing to my Likes playlist or any other playlist I want, seeing what other songs the artist has and more.
Pixave - Image/GIF/Video organizer
- I use Pixave as my own personal image library. I sort images in groups and I have powerful search I can use to find any image I need.
- Here is how my library looks:
- The red tag means that the image was uploaded to my Instagram page.
IINA - Video player
- Open source alternative to VLC built specifically for macOS.
- It is based on mpv and has a more modern and native look than VLC.
Kap - Screen recorder
- An open source screen recorder I use to record GIFs.
- Has keyboard support so I can quickly start and end recording of the GIF in one hotkey.
Hazel - Automated File Organization
- Use it to fully automate my filing process and automatically commit changes in many curated lists.
- I share most Hazel rules and how I use them here.
DaisyDisk - Visualize taken disk space
- A great tool to quickly get a visual glance over what is taking up your disk space and where.
iStat Menus - Mac system monitoring from menu bar
- Great system monitoring tools which I use to quickly see my CPU/network/memory usage. I find it very valuable to know if my CPU is being abused by some application and if so by which. I then use ProcessControl workflow to quickly kill off misbehaving processes. Often times iStat Menus is deactivated for me to preserve battery.
PodcastMenu - Puts Overcast in menu bar
- Allows you to listen and control playback of podcasts from Overcast right from your menu bar.
- My favorite browser. It is incredibly fast, doesn't have the baggage of all the Google Chrome tracking and is native to macOS so it is extremely optimized and doesn't kill your battery.
- One powerful plus that Chrome does have over safari is the amount of Chrome extensions that you can get. Fortunately the ones most needed for me do exist on Safari.
- sVim - Adds a custom layer of keybinds you can customize to personalize your browsing experience. My config.
- Wipr - Ad content blocker that uses Safari native content blocking API's.
- 1Password - 1Password is a phenomenal password manager, this extension just gives a seamless interaction of it with the browser.
- Cascadea - Custom styles extension. Use it to create dark themes for apps that don't have a dark mode option. Also allows importing of Stylish themes.
- Dark Reader - On websites that don't have a nice Stylish theme, I like to use Dark Reader to turn all the websites I visit to dark mode. It works surprisingly well.
- I only use Chrome for web development due to its superior Chrome Dev tools.
- I also love the variety of Chrome extensions that people have built and shared.
- Experimental Peer to Peer browser. Experimenting with using it more and more as I find the technology and the implications of it fascinating.
- Use it for web development for its superior Dev Tools in debugging CSS Grid. Prefer Chrome Dev tools still.
Command Line Apps
I curate a list of interesting CLI tools you can use. Below are some command line tools I personally use and love.
- fzf - Command-line fuzzy finder.
- ripgrep - Search text for patterns fast.
- fd - Simple, fast and user-friendly alternative to 'find'.
- exa - Replacement for ls written in rust.
- bat - Cat clone with wings.
- up - Deploy infinitely scalable serverless apps, APIs, and sites in seconds to AWS.
- jq - JSON processor.
- git - Version control.
- curl - Transfer data from or to a server.
- youtube-dl - Download videos from YouTube and other video sites.
- tmux - Terminal multiplexer.
- direnv - Environment switcher for the shell.
- htop - Interactive text-mode process viewer for Unix systems.
- httpie - HTTP client.
- rq - Tool for doing record analysis and transformation.
- pandoc - Universal markup converter.
- trash - Move files and folders to the trash.
- vtop - Graphical activity monitor.
- gotop - Terminal based graphical activity monitor inspired by gtop and vtop.
- howdoi - Instant coding answers.
- asciinema - Terminal session recorder.
- tldr - Simplified and community-driven man pages.
- imgcat - Like cat but for images.
- screenfetch - Fetches system/theme information in terminal.
- hugo - Fast and flexible static site generator.
- reflex - Run a command when files change.
- modd - Flexible tool for responding to file system changes.
- create-react-app - Create React apps with no build configuration.
- now - Real time global deployments served over HTTP/2.
- yarn - Fast, reliable, and secure dependency management.
- hub - GitHub wrapper.
- entr - Run arbitrary commands when files change.
- xsv - Fast CSV command line toolkit written in Rust.
- pv - Pipe Viewer.
- m-cli - Useful utils for macOS.
- pgcli - Postgres CLI with autocompletion and syntax highlighting.
- mas - CLI for mac app store.
- loc - Count lines of code quickly.
- alfred - Manage Go-based Alfred workflows.
- neofetch - System information tool.
- license-up - Create a license quickly for your project.
- piknik - Copy/paste anything over the network.
- bench - Command-line benchmark tool.
- ghq - Manage remote repository clones.
- npx - Execute npm package binaries.
- devd - Local webserver for developers.
- wifi-password - Get the password of the WiFi you're on.
- fkill - Fabulously kill processes.
- ran - Simple static web server written in Go.
- GPG Suite - Encrypt, decrypt, sign and verify files or messages.
- SwiftDefaultApps - Set the default application used for various URL schemes, file extensions, file types, MIME types, and Uniform Type Identifiers.
- TinkerTool - Gives you access to additional preference settings Apple has built into macOS.
Monokai Night themes
Having a unified theme across apps is amazing
I add a small space in my Dock to separate apps I always have open with apps I seldom open
If you found this interesting, I also have similar repository going over what applications I use on iOS/WatchOS as well as how and why I use them.
Here you can find more setups by other people that you can take ideas and inspiration from.
- Works for me - Collection of developer toolkits.
- Use This Interviews - What do people use to get stuff done?
- Omar Bahareth's my-mac-os - Another my-mac-os.
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.