explaingit

jarun/nnn

21,533CAudience · developerComplexity · 2/5MaintainedLicenseSetup · easy

TLDR

A minimal, fast terminal file manager for browsing and managing files in the command line, with plugins and multiple views.

Mindmap

mindmap
  root((nnn))
    What it does
      Browse files
      Manage folders
      Search instantly
      Preview files
    Features
      Multiple views
      Batch operations
      Plugin system
      Vim integration
    Use cases
      Terminal workflows
      Fast navigation
      File operations
      Disk usage
    Tech stack
      C language
      Lightweight
      Cross-platform
      Scriptable

Things people build with this

USE CASE 1

Navigate and manage files in a terminal without leaving the command line.

USE CASE 2

Perform batch operations like copy, move, delete, and rename across multiple directories.

USE CASE 3

Use as a file picker plugin inside Vim or Neovim for faster file selection.

USE CASE 4

Analyze disk usage and find large files or folders quickly.

Tech stack

CPOSIXVimShell scripting

Getting it running

Difficulty · easy Time to first run · 5min
Use freely for any purpose, including commercial use, as long as you include the original copyright notice and license text.

In plain English

nnn (pronounced "n cubed") is a file manager that runs inside a terminal window rather than as a graphical app. A file manager is the program you use to browse folders, open files, copy and rename things, and so on; nnn does this entirely with text and keyboard shortcuts. The README pitches it as tiny, nearly zero-config, and fast, with a small memory footprint (typically under 3.5MB) and a binary around 100KB. You move around with the arrow keys, filter the current folder by typing, and press a single character key to do most actions. The README lists a wide set of built-in features: a disk-usage analyzer that shows where space is going, a batch renamer that lets you edit many filenames at once, the ability to pick files and pass them to other programs, multiple tabs (called contexts) with their own colors, bookmarks, sessions, jumping to remote folders that have been mounted with sshfs or rclone, instant search-as-you-type with fuzzy or regex options, sorting by name, time, size, or extension, a file picker mode for use with editors, FreeDesktop-compliant trash integration, creating and extracting archives, and changing directory in your shell when you quit nnn. Beyond the core program there is a separate plugin repository that adds things like live previews, image, video and audio thumbnails, mounting and unmounting disks, file diffs, and uploads. Independent plugins exist to embed nnn inside vim and neovim. You would use nnn if you spend most of your time in a terminal and want a fast keyboard-driven way to navigate files without leaving it. It is written in C, runs on Linux, macOS, BSD, Haiku, Cygwin, WSL, the Raspberry Pi, and on Android via Termux.

Copy-paste prompts

Prompt 1
How do I install nnn and set it up as my default terminal file manager?
Prompt 2
Show me how to create a custom nnn plugin to preview markdown files.
Prompt 3
How do I use nnn to batch rename or move files across multiple folders?
Prompt 4
What keyboard shortcuts in nnn let me search and filter files the fastest?
Prompt 5
How do I integrate nnn as a file picker in my Vim or Neovim config?
Open on GitHub → Explain another repo

Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.