File Management

mq-dir vs nnn: GUI quad-pane vs terminal n-pane

nnn is the legendary terminal file manager — fast, minimal, scriptable. mq-dir is its GUI counterpart in a different design space. When does each fit?

Honam Kang5 min read

nnn is a love letter to minimalism: a single C binary that does file management in a terminal, with vim-style keys, a plugin system, and a community that swears by it. mq-dir is a GUI app for macOS with a four-pane layout. They're often compared in "best file manager 2026" round-ups — but they're optimizing for genuinely different workloads.

This post is for the developer evaluating both.

TL;DR

  • nnn for terminal-native workflows, SSH'd remote work, scriptable file ops.
  • mq-dir for GUI workflows, multi-context parallel work, mixed-media previews.
  • Use both — they're complementary, not substitutable.

Side-by-side

Axis nnn mq-dir
Interface Terminal (TUI) Native GUI (SwiftUI/AppKit)
Footprint <50KB binary ~5 MB app
Memory <5MB ~80MB
Startup time Instant ~150ms cold
Panes Up to 4 contexts (workspace tabs) 1 / 2 / 4 visible simultaneously
Preview External (image viewer / less) Built-in (images/video/audio/PDF/MD)
Plugins ✅ shell-script ecosystem ❌ (roadmap)
Remote (SSH) ✅ via terminal
Tags / colors △ macOS tags read-only display
Keyboard vim-like macOS conventions
GUI affordances None Drag-drop, click, scroll
Pricing Free, BSD Free, MIT

Where nnn wins

Pure speed

nnn is the fastest file manager you'll ever use, full stop. Open, navigate, close — feels instantaneous. No compositor, no animations, no GUI overhead. On a slow remote SSH session, this matters enormously.

mq-dir is fast for a GUI app (cold launch ~150ms) but can't compete with terminal speed.

SSH / remote work

SSH into a server, run nnn, manage files exactly as you would locally. No port-forwarding, no SFTP setup, no "I don't have a desktop here."

mq-dir is local-only. For remote file management, nnn (or Yazi or ranger) wins by default.

Scriptable

nnn's plugin system is shell-script-based — write a shell script, bind it to a key, done. Pipe selections to fzf, send to LLM, batch rename via sed, sync via rsync. Anything that fits in a shell script becomes a file-manager command.

mq-dir has no plugin/scripting today. This is the biggest functional difference for power users.

Tiny footprint

50KB binary. <5MB memory. Runs anywhere — Raspberry Pi, BSD, ancient Mac. mq-dir is comparatively heavy.

Workspace contexts

nnn has 4 keyboard-switchable workspace contexts (Alt+1-4). Each is independent. Conceptually similar to mq-dir's 4 panes — but only one workspace visible at a time.

Where mq-dir wins

Visual context

mq-dir shows you 4 panes simultaneously. nnn shows you one at a time and lets you switch fast. For genuine parallel-work-where-you-need-to-see-all-four (research, multi-project, AI agent fleet), seeing all four wins.

Preview that handles everything

mq-dir previews images, video, audio, PDF, Markdown with full GFM in-place, no setup. nnn previews require external tools (image viewer, less, mpv) and configuration. For mixed-content workflows (web dev with assets, blog drafts with screenshots), mq-dir's built-in preview saves real time.

Drag-and-drop interactions

Drag a file from mq-dir to a Slack message, an email, a browser upload. Drag from a browser to mq-dir. nnn can't do this — terminal apps can't participate in macOS drag-and-drop.

For workflows that bridge file system and other apps (which is most knowledge work), mq-dir is genuinely better.

macOS integration

mq-dir reads macOS tags, opens with default apps, integrates with Spotlight indices. nnn is filesystem-only — Mac-specific features (tags, Quick Look, AirDrop) are off-limits.

Mixed-media workflows

If your daily work involves PNGs, MOVs, PDFs, MP3s, MD files — anything beyond plain text — mq-dir's preview capability is night-and-day better than nnn-with-plugins.

Where they're tied

  • Both serious about keyboard navigation.
  • Both deliberately small surface area (within their respective interface paradigms).
  • Both free, both open-source.

Use case routing

Workflow Pick
SSH'd into a remote server nnn
Running locally on a Mac, mostly GUI workflow mq-dir
4 AI agents producing artifacts in 4 folders mq-dir
Want to scriptably batch-rename 200 files now nnn (or wait for mq-dir batch ops)
Need to preview 50 generated images quickly mq-dir
Want fast file ops over slow Wi-Fi from a server nnn
Mixed-media content workflow mq-dir
Quick "where did I put that PDF?" mq-dir + Spotlight

The coexistence pattern

Many serious developers run both:

  • mq-dir as the daily GUI driver for local Mac work.
  • nnn in a tmux/cmux pane for terminal/SSH file ops.

There's no overlap; they handle different jobs. Installing both is the right move for most readers.

What mq-dir would learn from nnn

If we were honest about borrowing:

  1. The plugin model. nnn's "shell-script-bound-to-keystroke" is brilliantly simple. mq-dir's eventual plugin API should adopt something similar.
  2. The minimalism discipline. nnn ships fewer features than reasonable, on purpose. mq-dir already follows this; nnn is a useful guardrail.
  3. The shell-pipeline integration. nnn pipes selections to external tools effortlessly. mq-dir has no equivalent today.

What nnn would learn from mq-dir

Less applicable since terminal apps can't really borrow GUI patterns. But:

  1. The "religious state persistence" stance. nnn does persist some state (last directory) but mq-dir's depth is a different category.
  2. Per-tab/per-pane preview state. nnn's workspaces are entirely independent contexts but they don't have "preview pane" state per workspace.

Verdict

nnn and mq-dir are not really competitors. They're tools for different parts of the same workflow. Most heavy users benefit from running both.

  • Use nnn when you're in a terminal anyway, when you need shell-script power, when you're remote, when speed is paramount.
  • Use mq-dir when you're in a GUI workflow, when previews matter, when 4 simultaneous panes earn their screen real estate.

Both free, both small. Install both. Your hand will route you to the right tool for each task within a week.

mq-dir is MIT, no telemetry. nnn is BSD, also no telemetry. Both safe, both serious.

Try mq-dir

A native quad-pane macOS file manager — free, no telemetry.

v0.1.0-beta.12 · Universal Binary · 5.3 MB · macOS 14.0+

Download for Mac

Frequently asked questions

Both, depending on the task. Terminal (nnn, Yazi, ranger) wins for SSH'd remote work, headless servers, and chains with shell pipelines. GUI (mq-dir, Forklift, Finder) wins for previewing media, drag-drop interactions, and visual context-switching. Most heavy users keep one of each.

References

  1. [1]
  2. [2]

Ready to try mq-dir?

A native quad-pane file manager built for AI multi-tasking on macOS. Free, MIT licensed, zero telemetry.

v0.1.0-beta.12 · MIT · macOS 14.0+ · download