whatisgithub

What is mini.nvim?

nvim-mini/mini.nvim — explained in plain English

Analysis updated 2026-06-24

9,135LuaAudience · developerComplexity · 3/5Setup · moderate

In one sentence

A collection of 40+ small, independent Neovim plugins in one repository, covering text editing shortcuts, file browsing, fuzzy finding, status line display, git navigation, and color schemes, each usable on its own.

Mindmap

mindmap
  root((mini.nvim))
    Text Editing
      Auto-close brackets
      Surround text
      Code snippets
      Column alignment
    Navigation
      Fuzzy file finder
      File browser
      Git hunk jumping
    Visual
      Status line
      Tab bar
      Color schemes
      Indent highlights
    Setup
      Lua config
      Plugin manager
      Per-module install
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add fuzzy file finding to Neovim so you can open any file by typing a few letters of its name.

USE CASE 2

Customize your Neovim status line and tab bar with lightweight modules that need minimal configuration.

USE CASE 3

Add auto-closing brackets, smart text surrounding, and code snippet support to Neovim with a consistent setup pattern.

USE CASE 4

Navigate git changes inside Neovim and jump between modified hunks without leaving the editor.

What is it built with?

LuaNeovim

How does it compare?

nvim-mini/mini.nvimtheprimeagen/harpoonhrsh7th/nvim-cmp
Stars9,1359,0699,419
LanguageLuaLuaLua
Setup difficultymoderatemoderatemoderate
Complexity3/52/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Neovim 0.10 or newer, each module must be individually enabled in your Lua config.

So what is it?

Neovim is a code editor that runs in the terminal and is popular among developers who prefer keyboard-driven workflows. mini.nvim is a collection of more than 40 small plugins for Neovim, all bundled into a single repository. Each plugin in the collection is independent: you can install the whole bundle and enable only the modules you want, or install individual modules as standalone repositories. The modules are grouped by what they do. Some improve text editing, adding shortcuts for commenting lines, surrounding text with brackets or quotes, aligning columns, auto-closing parentheses, and managing code snippets. Others improve general workflow, including a file browser, a fuzzy finder for opening files quickly, a plugin manager for handling other Neovim extensions, and tools for navigating through git changes inside the editor. There are also modules for the visual side of the editor: status line customization, tab bar display, code highlighting for indentation levels, and several color schemes. Each module is written in Lua, which is the language Neovim uses for its configuration and plugins. The modules follow a consistent design pattern, meaning they all configure the same way and behave predictably once you have learned one of them. The collection targets Neovim version 0.10 and newer. Installation can be done through several popular plugin managers for Neovim, or by cloning the repository directly using git. The project distributes both a development branch that gets updates continuously and a stable branch that only advances on formal releases. The project was previously hosted under a personal GitHub account and moved to a dedicated organization to improve long-term maintenance. Documentation is available per-module inside the repository, and the project website includes a full configuration example showing how multiple modules can be set up together.

Copy-paste prompts

Prompt 1
I want to set up mini.nvim in my Neovim config. Show me how to install it with lazy.nvim and enable mini.files, mini.pick, and mini.statusline with their default settings.
Prompt 2
Walk me through configuring mini.surround so I can quickly wrap selected text in quotes or brackets and change or delete existing surroundings with keyboard shortcuts.
Prompt 3
How do I use mini.git in Neovim to see which lines in the current file were changed and jump between git hunks?
Prompt 4
I want to replace my current fuzzy finder with mini.pick. Show me how to set up keybindings to search files, grep across the project, and pick open buffers.
Prompt 5
Help me configure mini.completion to give me basic autocomplete in Neovim without any external LSP required.

Frequently asked questions

What is mini.nvim?

A collection of 40+ small, independent Neovim plugins in one repository, covering text editing shortcuts, file browsing, fuzzy finding, status line display, git navigation, and color schemes, each usable on its own.

What language is mini.nvim written in?

Mainly Lua. The stack also includes Lua, Neovim.

How hard is mini.nvim to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is mini.nvim for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.