List of applications and tools that make my macOS experience even more amazing
- 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 very 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.
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 nearly always use two labels: Important and Next. And I mark the cards I am working on and set deadlines on most cards.
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 have a Think map that I open with Karabiner by pressing
f + :. And I brainstorm things I am doing now there.
- I also use MindNode to visualize topics and their relations as an interactive mind map.
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 applications.
- 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.
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.
- 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
- A great utility app that allows you to customize and hide the contents of your menu bar and improve the aesthetics of your OS. It is also is quite beneficial for me as I customized it to have the most important information that I need to show in it.
- I can also activate Bartender and start searching for the menu bar item I need all from the keyboard.
Focus - Block distracting websites
- I have front pages of Hckrnews, Reddit, Twitter and many more time sinking websites on the black list.
- I then have a schedule where I can only use these websites for 20 minutes every 2 hours. It also turns on Do Not Disturb mode whilst I am in Focus mode.
- 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:
Noizio - Ambient sounds
- I never listen to music when I want to focus on something as it is distracting. Instead I listen to sounds of rain, train or fire.
Hammerspoon - Automation tool
- Powerful automation engine, wanted to use it for window management at first but found BetterTouchTool to be more performant.
- Right now I use it show the task I am currently working on in a little window in the middle of the screen for a brief moment:
- 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 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 often 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.
Anki - Intelligent flash cards
- Spaced repetition learning is quite powerful. Essentially all this software does is provide you the means to write your own digital flashcards that you can then test yourself on. It also has a lot of amazing addons that you can get to add more functionality to the app.
TotalSpaces2 - Grid space manager
- Allows me to completely remove the animation of switching between spaces/full screen apps.
- I now run most applications in full screen and switch between them with Karabiner.
- Use the app to fully plan any meal or recipe I want to make throughout the day as well as collect recipes and manage my shopping list.
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 Monokai Octagon theme with Fira Code font. Here is how it looks:
iTerm - Terminal Emulator
- Use Zsh as my shell together with Antibody plugin manager and Pure theme.
- Assigned w + j with Karabiner to open the app from Keyboard Maestro in seconds.
- I made my own Monokai theme for it. Which goes well with Ayu theme for Vim.
- 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 worfklow 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.
- This lets me then use the Alfred workflow that the app's author provides to search for these snippets insanely fast.
- I share my entire library of snippets as GitHub Gists. And I share my local library too that you can download here.
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 config for it can be seen here. I use a few plugins for it.
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 Night Blue 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.
Airmail - Email client
- By far the most well designed and feature rich mail application that I have used so far. Has simple design, support for multiple accounts and a multitude of nice shortcuts that you can use.
- 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 four columns (Mentions/Top/ML/Other). 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 Insgragram 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.
Ulysses - Writing app
- The app I use to write all my Medium articles in.
- All your writing in one place is the motto and the underlying design of the app. I hook up my wiki as an external folder and I love how it creates an index of everything that I can search over:
- It also has pretty awesome export functions that let you export the text you write to PDF, ePub and HTML. I mostly use it's ability to export text to Medium.
- I use Ayu theme when I write. Here is how it looks:
- I describe my thoughts and approach to writing here.
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.
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.
The red tag means that the image was uploaded to my Instagram page.
Pixelmator - Image editor
- Mostly use the app to do quick, small edits on images like adding transparent background to an image.
ImageOptim - Compress images without losing quality & remove metadata
- Quickly remove all the unneeded metadata from the image as well as compress images without losing any visual quality and saving a lot of bandwidth when uploading these images on your website or blog.
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.
GIF Brewery - Create GIFs
- Allows me to create some great GIFs from video clips as well as converting the entire video clip into a GIF if need be.
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.
Actual - Budget manager
- Use it to track, budget and overview all of my finances. I use YNAB ideology for managing my money with the goal of being proactive with budgeting and spending. Knowing how much money I have and how much money I can spend on any given category. I find this proactive approach in dealing with money very freeing and powerful.
Hazel - Automated File Organization
- Use it to fully automate my filing process and automatically commit changes in many curated lists.
- I use prefixes for most files. This allows me to write some great rules for my Downloads folder that will file the files where I want them to be based on the prefix.
- Here is one example of such rule:
Next Meeting - Show time until next event in menu bar
- It has been quite a big addition to my workflow as I know can quickly know how much time is left until my next class or some other event starts.
DaisyDisk - Visualize taken disk space
- A great tool to quickly get a visual glance over what is taking up your disk space and where.
Gemini - Search & remove duplicate files
- A great little utility to find duplicate files in the system. Didn't get much use of it so far but it may be quite useful on occasions where I do want to clean up my system from useless files and junk.
Default Folder X - Extend & improve open/save dialogues
- Neat little utility I mostly use to quickly go to various folders from file save windows from hotkeys.
iStat Menus - Mac system monitoring from menu bar
- Great system monitoring tools of which I use to quickly see my CPU/network/memory usage as well as quickly see my calendar and weather. 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.
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.
- My absolute favorite extension on Safari is sVim which gives me full keyboard control over my browser. Here is my config for it.
- 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.
- ccat - cat command with colors.
- 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.
- curl - Transfer data, supports various protocols.
- 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.
- do-not-disturb-cli - Control the macOS
Do Not Disturbfeature.
- GPG Suite - Encrypt, decrypt, sign and verify files or messages.
- RCDefaultApp - Set the default application used for various URL schemes, file extensions, file types, MIME types, and Uniform Type Identifiers.
Using this to add spaces between apps in Dock.
If you found this interesting, I also have similar repository going over what applications I use on iOS 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?
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.
MIT © Nikita Voloboev