Marta - macOS Finder for developers


Ever since I’ve fully switched from Windows to macOS for my daily development, I was looking for a good Finder replacement. On Windows I was just using Windows Explorer, which wasn’t great, but good enough. On macOS however, the native Finder application is far beyond being developer friendly. It might be that I’ve missed to change some secret setting, but some of the pain points I had (back then) were:

  • Copying paths from directories or files
  • Navigating to paths from the clipboard
  • No dual mode
  • No tab support
  • Directories and files are mixed in order

I tried several alternatives, like TotalFinder, muCommander, PathFinder, or ForkLift. They all look quite polished, but very often I missed some ways of configuration, or it was too overloaded or too mouse-driven. Until today, I went with TotalFinder, as it was the tool that came closest to my requirements.

Meet Marta

At some point, Marta popped up in my Twitter timeline. I don’t remember who posted it. It might have been a colleague. Marta comes with dual mode (similar to FarManager), an integrated terminal, tab support, customizable columns, and DirStat (similar to WinDirStat):

Marta overview

Surprising background

My first and foremost thought about Marta was: Wow! This feels a bit like working in JetBrains Rider / IntelliJ IDEA. That was mostly because of the way how you search and select file items. Just type a search term, which will be shown in the bottom right, and then navigate with arrow keys through the results:

Searching and selecting

Another reason is the Lookup search, which is shown in the upper middle of the application and allows to search for just anything:

Lookup search

One last thing that reminded me of JetBrains IDEs, was the fact that I could just start typing to filter items in the Recent Locations popup menu:

Filtering in Recent Locations popup

Great tool! I was even recommending Marta to a colleague of mine, with whom I occasionally share tool recommendations. Then, another week later, while I was looking for the public repository to raise an issue, I found a few information about the author:

Searching in popups

Okay, this is crazy! 🤯 My initial thought was not too bad. Yan is working in the Kotlin team. The (developer) world is kinda small. 😅

More Configuration

If you know JetBrains IDEs, you also know how customizable they are. Marta is actually similar in that regards. So my first act was to align all shortcuts with the ones I’m using in Rider. Again, the functionality feels very familiar:

Action Explanation
core.lookup Similar to Search Everywhere navigation but with additional prefixes
core.actions Similar to Navigate to action
core.favorites Similar to the Favorites window whereas entries can be modified via Edit favorites action
core.toggle.terminal Similar to the Terminal Emulator, which will automatically show/hide depending on the active pane
core.rename Similar to the rename refactoring

Of course, there are much more options. Like file-system specific actions, or the existential Dark theme. My configuration looks like this:

behavior {
    theme "Dark"

environment {
    terminal "iTerm"
    textEditor "Visual Studio Code"

keyBindings {
    "Shift+Cmd+A" { id "core.actions" }
    "Cmd+Shift+T" { id "core.lookup" }
    "Cmd+1" { id "core.favorites" }
    "Cmd+E" { id "core.recent.directories" }
    "Cmd+3" { id "core.toggle.terminal" }
    "Cmd+Shift+3" { id "" }
    "Cmd+4" { id "" }
    "Cmd+Alt+N" { id "" }
    "Cmd+Shift+N" { id "" }
    "Cmd+R" { id "core.rename" }
    "Return" { id "" }
    "Cmd+Return" { id "core.edit" }

Yan, thank you so much for completing my macOS developer experience! 👏