File Management

Best terminal file managers in 2026: nnn, Yazi, ranger, mc compared

Terminal file managers are having a renaissance in 2026, led by Yazi's Rust-built async engine. Here's the honest comparison of the four serious contenders.

Honam Kang5 min read

Terminal file managers had a quiet decade after ranger's heyday. The 2024-2026 wave brought Yazi and revitalized the category. Here's the honest 2026 ranking of the four serious contenders.

The 2026 ranking

#1 — Yazi (Rust)

The strongest 2026 terminal file manager by most measures. Async preview engine means selecting a 50MB PDF doesn't block. Image preview works natively in Sixel-capable terminals (iTerm2, Kitty, WezTerm) — no plugin or chafa setup. Lua plugin system. Cross-platform (Linux/macOS/BSD/Windows).

brew install yazi

Why #1: best first-run experience, async-first design, modern plugin model.

Caveats: younger plugin ecosystem (vs ranger or nnn), 3-5MB binary (vs nnn's 50KB).

#2 — nnn (C)

The minimalist standard. <50KB binary, <5MB memory, vim-aware, shell-script plugins. Mature ecosystem. The "smallest tool that's still fully functional" in this category.

brew install nnn

Why #2: still excellent for users who want minimal footprint or have existing plugin setup. Faster than Yazi for raw enumeration on huge directories.

Caveats: synchronous preview (blocks), image preview requires fragile plugin setup, no Lua plugins (shell scripts only).

#3 — ranger (Python)

The category-defining vim-style 3-column Miller-view file manager. Mature, feature-rich, slowing in active development. Python-based.

Why #3: still excellent for ranger veterans with customized configs. Miller column flow remains a unique navigation pattern. Slower than Yazi/nnn but rich.

Caveats: Python-based (slower on huge dirs), image preview setup is famously fragile, less actively developed in 2026.

#4 — Midnight Commander / mc (C)

The oldest of the four, going back to 1994. Norton Commander descendant — dual-pane (not Miller-column), function-key UX, text-mode interface. Not vim-influenced.

brew install mc

Why #4: still active, still works, still has devoted users especially in sysadmin community. Different philosophy than the three above (commander-style vs vim-style).

Caveats: feels old, no modern features (async, image preview, Lua), niche fit for new users.

Side-by-side

Axis Yazi nnn ranger mc
Implementation Rust C Python C
Binary size ~3-5MB <50KB Python script ~500KB
Memory at idle ~20MB <5MB ~25MB ~10MB
Async preview △ partial
Image preview ✅ Sixel/Kitty △ plugin △ plugin
Layout Miller (3-col) Single (4 workspaces) Miller (3-col) Dual-pane
Plugin system Lua Shell scripts Python Shell scripts
Vim keys ❌ (function keys)
Cross-platform ✅ broad ✅ broad ✅ broad ✅ broad
2026 activity High Medium Low Medium
First release 2023 2014 2009 1994

Where each shines

Yazi shines at

  • New user onboarding (best defaults).
  • Image-heavy directories (Sixel preview).
  • Async-aware workflows (no blocking).
  • Cross-platform consistency including Windows.
  • Modern plugin development (Lua > shell scripts for complex logic).

nnn shines at

  • Tiniest footprint (Pi, ancient hardware).
  • Pure speed on huge directories.
  • Shell-script plugin authoring (one-liner plugins).
  • Existing-user momentum.

ranger shines at

  • Miller column navigation for users who love that flow.
  • Python plugin ecosystem (still works for what's there).
  • Customization depth (years of accumulated config patterns).

mc shines at

  • Norton Commander muscle memory (sysadmins from the 90s/2000s).
  • Dual-pane terminal flow.
  • Function-key UX for users who want it.

Use case routing

Workflow Pick
New to terminal file managers Yazi
SSH'd into ancient/embedded hardware nnn
Existing ranger config Stay on ranger
Norton-Commander-style 2-pane mc
Cross-platform incl. Windows Yazi
Image-heavy browsing in terminal Yazi
Smallest footprint priority nnn
Shell-script integration first nnn
Lua plugin development Yazi

What to install if you do nothing else

brew install yazi

For most users in 2026, Yazi is the right pick. If you want a backup, add nnn:

brew install nnn

Both free, both open-source, both mature.

What about file managers that aren't in this list

  • lf (Go): minimalist ranger-alternative. Niche but real. Worth a look for Go-language enthusiasts.
  • fff (bash): pure shell-script file manager. Curiosity, not a daily driver.
  • broot (Rust): tree-focused, less general-purpose. Different category.
  • xplr (Rust): Lua-scriptable, modern. Yazi is similar and more polished today.

If you've heard of a terminal file manager not on this list, it's probably either older (mc-era) or niche (broot, xplr). The four above are the mainstream serious contenders.

Pairing with a GUI manager

Most heavy users run a terminal manager AND a GUI manager. The recommended combinations:

Yazi + mq-dir         (free, open-source, AI-dev-friendly)
Yazi + Forklift       (commercial polish for SFTP)
nnn + mq-dir          (minimalist + quad-pane)
ranger + Forklift     (existing ranger users + SFTP)

mq-dir specifically is the GUI complement most modern AI devs end up with.

Verdict

In 2026, Yazi is the strongest terminal file manager for new users. It's the first tool in this category to combine async preview, working image preview, modern plugins, and cross-platform polish.

nnn remains excellent for minimalist enthusiasts and existing users.

ranger still works but new users should probably start with Yazi.

mc is for users who want commander-style 2-pane in a terminal.

The whole category is open-source and free. Try Yazi for a week; if it doesn't fit your hand, fall back to one of the others. Pair with a GUI manager (mq-dir is the AI-friendly pick) for the GUI half of your workflow.

Open source

mq-dir is fully open source.

MIT licensed, zero telemetry. Read the source, file an issue, send a PR.

★ Star on GitHub →

Frequently asked questions

Three reasons: SSH workflows (terminals are the only option remotely), speed (no compositor overhead), shell-pipeline integration (selections pipe to fzf/grep/whatever). For local Mac work, GUIs win; for terminal-heavy work, TUIs win.

References

  1. [1]
    Yazitool
  2. [2]
    nnntool
  3. [3]
    rangertool
  4. [4]

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.11 · MIT · macOS 14.0+ · github