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 time I spend on my computer.
MindNode - Interactive Mind Mapping
- An application which allowed me to originally create all of the maps for Learn Anything.
- I use MindNode to visually break down problems I am trying to solve.
- And I 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 with 16h 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.
- 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 use it to play sounds of rain when focusing.
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. I use its actions to upload images to Imgur, upload videos to YouTube & searching images with Google. I also use it to drop files into a preset number of common folders.
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.
- 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 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.
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:
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
- My favorite messenger app due to its clean interface, a native client and stickers. I use few KM macros & quick jump search to instantly jump to chats.
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.
- I have Tweetbot open in full screen with two columns (Mentions or Other & Timeline). Here is how that looks for me:
Figma - Design tool
- Use the app to quickly prototype & collaborate on designs.
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.
- My favorite browser. It is incredibly fast & cares about my privacy unlike Chrome.
- 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.
- Use it to develop websites with Dev Tools and Pesticide & React Dev Tools extensions. Chrome has few other extensions I like.
Command Line Apps
I curate a list of interesting CLI tools. Below are ones I love & use daily:
- exa - Replacement for ls written in rust.
- ripgrep - Search text for patterns fast.
- fzf - Command-line fuzzy finder.
- fd - Simple, fast and user-friendly alternative to 'find'.
- watchexec - Executes commands in response to file modifications.
- 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.
- 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.
- 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.