Neovim Plugin Atlas

Up: Neovim Config Tutorial Down: editor, UI, colorschemes, LSP completion, Git, Treesitter, tools, languages, notes, debug test data, AI

This atlas names every plugin in the lockfile-level ecosystem and says why it belongs. Some are main tools. Some are quiet dependencies. A good workbench needs both chisels and screws.

Core

PluginWhy it is here
lazy.nvimLoads the workshop in categories and keeps plugin state reproducible.
plenary.nvimProvides Lua utility plumbing used by Telescope, tests, reload helpers, and many plugins.
direnv.vimLets the editor inhale the project environment, which is essential for devenv and devShell workflows.

Editing

PluginWhy it is here
mini.aiAdds smarter text objects so edits target ideas, not just punctuation.
mini.sessionsSaves and restores project sessions without making sessions automatic or spooky.
mini.bracketedMakes bracket navigation a regular street grid for buffers, diagnostics, files, and quickfix entries.
undotreeShows undo history as a timeline for older Neovim versions.
nvim-surroundChanges quotes, tags, brackets, and wrappers with fewer keystrokes.
dial.nvimTurns increment and decrement into a semantic crank for numbers, dates, booleans, and words.
oil.nvimTreats directories as editable buffers, making file operations feel like normal text editing.
oil-git.nvimAdds Git awareness to Oil so the file cabinet knows what changed.
grug-far.nvimGives project-wide search and replace a deliberate command surface.
which-key.nvimMakes the keymap discoverable, especially the large leader-key vocabulary.
gx.nvimOpens URLs and file references without relying on netrw.

Interface

PluginWhy it is here
snacks.nvimProvides a dashboard, notifier, scratch buffers, word helpers, and zen mode without taking over every UI surface.
nvim-colorizer.luaShows color values as color chips, which matters in themes and frontend work.
nvim-web-deviconsGives filetypes recognizable glyphs in statuslines, pickers, and buffers.
indent-blankline.nvimDraws indentation rails so nested structure is visible at a glance.
lualine.nvimTurns the statusline into an instrument panel for Git, LSP, linting, tasks, packages, R, AI, and mode state.
copilot-lualineAdds Copilot status to the instrument panel when Copilot is enabled.
barbar.nvimProvides a visible buffer row for open-file navigation.
rainbow-delimiters.nvimColors nested parentheses and delimiters so structure has depth.
dressing.nvimImproves vim.ui.select and vim.ui.input prompts used by other plugins.
noice.nvimRoutes messages, command-line UI, and notifications through a calmer interface.
nui.nvimSupplies UI primitives used by Noice, DAP UI, and AI interfaces.
todo-comments.nvimTurns TODO, FIXME, and similar markers into navigable work items.
render-markdown.nvimMakes Markdown, org, norg, R Markdown, and AI buffers read like documents inside Neovim.
live-preview.nvimOpens a browser preview for markup work when static rendering is not enough.

Colors

PluginWhy it is here
catppuccinCurrent soft default, good for long editing sessions.
tokyonight.nvimA crisp dark palette for high-contrast coding.
kanagawa.nvimA warmer, ink-like palette.
rose-pineA muted palette for prose and slower work.
everforest-nvimA green, low-glare fallback loaded early.

LSP, Completion, Format, And Lint

PluginWhy it is here
nvim-lspconfigProvides Neovim’s LSP wiring and server configuration substrate.
mason.nvimNon-Nix Linux convenience UI for installing tools. Disabled on NixOS.
mason-lspconfig.nvimBridges Mason and LSP config on non-Nix systems. Disabled on NixOS.
lspsaga.nvimGives LSP actions, finder, outline, and diagnostic movement a richer interface.
colorful-menu.nvimMakes completion labels easier to scan.
lazydev.nvimTeaches Lua buffers about Neovim’s runtime APIs.
tsc.nvimRuns TypeScript compiler diagnostics as a separate, project-scale signal.
ts-error-translator.nvimTurns dense TypeScript errors into friendlier explanations.
conform.nvimCoordinates formatters with LSP fallback and per-filetype rules.
nvim-lintRuns linters on write and text changes without mixing linting into formatting.
SchemaStore.nvimSupplies JSON and YAML schemas.
blink.cmpMain completion engine, fast enough to be the cockpit.
blink.compatLets older cmp-style sources speak to Blink.
friendly-snippetsProvides broad community snippets.
blink-ripgrep.nvimCompletes from project text, turning the repository itself into memory.
blink-cmp-gitCompletes GitHub and Git context in commits and issue workflows.
cmp-nvim-luaCompletes Neovim Lua APIs through compatibility wiring.
blink-calcEvaluates simple calculations from completion.
cmp-emojiAdds emoji completion where prose or issue text wants it.
lspkind.nvimAdds kind icons to completion entries.
cmp-dapAdds debugger-aware completion inside DAP buffers.
ecolog.nvimLets env-file keys be searched, peeked, and inserted without publishing values.

Git

PluginWhy it is here
gitsigns.nvimShows hunk signs and provides hunk motions, blame, diff, reset, and stage actions.
neogitBrings a Magit-like Git command center into Neovim.
diffview.nvimGives file, branch, history, and stash diffs a dedicated layout.
octo.nvimHandles GitHub issues and pull requests from the editor.

Treesitter

PluginWhy it is here
nvim-treesitterProvides syntax trees for highlighting, text objects, comments, pairs, and language-aware behavior.
nvim-dap-repl-highlightsHighlights debugger REPL buffers with Treesitter.
nvim-ts-autotagCloses and renames tags in markup-heavy languages.
ts-comments.nvimMakes comments language-aware through Treesitter.
nvim-autopairsInserts matching delimiters without getting in the way.
vim-matchupImproves % matching and structural movement on older Neovim versions.

Search, Projects, Tasks, And Terminals

PluginWhy it is here
telescope.nvimMain search lens for files, grep, Git, help, marks, registers, and plugin pickers.
telescope-fzf-native.nvimMakes Telescope fuzzy matching faster and sharper.
project.nvimDetects project roots so search, LSP, and task commands know the current room.
trouble.nvimTurns diagnostics, quickfix, and references into readable issue lists.
harpoonKeeps a hand-picked ring of files close, separate from fuzzy search.
overseer.nvimRuns and tracks tasks inside Neovim.
toggleterm.nvimProvides project terminals, lazygit, btop, VisiData, and domain-specific REPL launchers.
nvim-bqfMakes quickfix windows previewable and easier to navigate.
kulala.nvimRuns REST and HTTP requests from .http and .rest files.

Languages And Domains

PluginWhy it is here
scnvimTurns Neovim into a SuperCollider control room.
vim-tidalRetained as a parked older Tidal option, currently disabled.
tidal.nvimActive TidalCycles integration with SuperDirt boot flow.
sonicpi.nvimAdds Sonic Pi editing, commands, and LSP integration.
R.nvimConnects R and R Markdown editing to an interactive R session.
salt-vimAdds SaltStack syntax when Salt work is enabled.
Vim-Jinja2-SyntaxImproves Jinja templates, especially around infrastructure files.
vimtexGives LaTeX compilation, viewing, motions, text objects, and diagnostics.
typst-preview.nvimPreviews Typst documents.
ledger.nvimAdds ledger and hledger writing support.
package-info.nvimShows package dependency freshness in JavaScript projects.
neogenGenerates doc comments from code structure.
refactoring.nvimProvides extract, inline, and refactor flows with Telescope integration.

Notes And Knowledge

PluginWhy it is here
obsidian.nvimConnects Neovim to Markdown vault work: dailies, templates, backlinks, links, tags, and note creation.
orgmodeAdds org agenda, capture, tasks, and structured planning.
org-modern.nvimMakes org buffers easier to read.

Debug, Test, Data, And Notebooks

PluginWhy it is here
nvim-dapCore Debug Adapter Protocol client.
nvim-dap-virtual-textShows debugger values inline and near code.
nvim-dap-pythonAdds Python debugger helpers.
telescope-dap.nvimLets Telescope browse DAP commands and state.
nvim-dap-uiProvides debugger panes for scopes, stacks, watches, and REPLs.
nvim-nioAsync dependency used by DAP UI and test tooling.
one-small-step-for-vimkindLua debugging option, intentionally parked disabled.
mason-nvim-dap.nvimNon-Nix Linux helper for debugger adapters. Disabled on NixOS.
neotestMain test runner interface.
neotest-pythonPython adapter for Neotest.
neotest-testthatR testthat adapter for Neotest.
neotest-vitestVitest adapter for Neotest.
neotest-jestJest adapter for Neotest.
neotest-playwrightPlaywright adapter for Neotest.
jupynium.nvimJupyter notebook bridge for Python-heavy notebook workflows.
vim-dadbodDatabase query engine inside Neovim.
vim-dadbod-uiDatabase browser and query UI.
vim-dadbod-completionSQL completion for database buffers.

AI And Agents

PluginWhy it is here
copilot.luaInline AI suggestions when Node is new enough and the feature is enabled.
codeium.vimAlternative inline assistant, currently feature-gated off.
supermaven-nvimAnother inline assistant option, currently feature-gated off.
avante.nvimLarger AI edit/chat workspace for code changes.
sidekick.nvimTmux-backed CLI agent bridge for prompts, selections, files, and next-edit suggestions.

Related: platforms, LSP architecture