Skip to content

Add-ons & Components

Auto-generated

This page and its diagram are generated from lib/addons.json by lib/gen-addons-docs.py, and drift-checked against the live config/ tree. Do not edit by hand — run nix run .#handbook-addons.

timvim bundles 47 add-ons — 46 enabled out of the box and 1 shipped but off by default — on top of the NVF framework. The Overview shows them as a visual map; the full list is grouped into 10 families below.

AI Assistance

Chat and inline completion, under your control.

Add-on Purpose Default
Claude Code AI chat and agentic coding inside a terminal split. ✅ On
GitHub Copilot Inline ghost-text completion you accept as you type. ✅ On

Language & LSP

Diagnostics, formatting, completion and syntax.

Add-on Purpose Default
nvim-lspconfig + lspsaga Language servers with a polished diagnostics UI. ✅ On
Language modules Per-language LSP, formatting, DAP and treesitter, via NVF. ✅ On
nvim-treesitter Fast, accurate syntax highlighting and code objects. ✅ On
conform.nvim Format-on-command with per-filetype formatters. ✅ On
LuaSnip Snippet engine feeding the completion menu. ✅ On
Trouble A pretty, navigable list of diagnostics and references. ✅ On
harper-ls Grammar and spelling language server for prose. ✅ On
esbonio (RST/Sphinx) reStructuredText and Sphinx language server. ✅ On

Jump to files, symbols and text fast.

Add-on Purpose Default
Telescope Fuzzy finder for files, grep, symbols and media. ✅ On
flash.nvim Label-based jump-to-anywhere motions. ✅ On
goto-preview Peek definitions and references in a floating window. ✅ On
outline.nvim A symbol outline sidebar for the current file. ✅ On
smart-splits.nvim Seamless split navigation and resizing. ✅ On

Git & GitHub

Hunks, diffs, blame and pull requests.

Add-on Purpose Default
gitsigns.nvim Inline hunk signs, staging, blame and hunk motions. ✅ On
diffview.nvim Side-by-side diffs and merge-conflict resolution. ✅ On
octo.nvim Review and manage GitHub issues and pull requests. ✅ On

Editing & Motion

Surround, yank, multi-cursor and refactor.

Add-on Purpose Default
nvim-surround Add, change and delete surrounding pairs. ✅ On
yanky.nvim A yank ring with history and put-with-formatting. ✅ On
multicursors.nvim Multiple cursors for simultaneous edits. ✅ On
refactoring.nvim Extract, inline and other language-aware refactors. ✅ On
hardtime.nvim Coaches better motions by nudging away from bad habits. ✅ On
mini.nvim A suite of small editing utilities (pairs, colours). ✅ On

Debug & Test

Breakpoints, stepping and test runners.

Add-on Purpose Default
nvim-dap Debug Adapter Protocol client with a debug UI. ✅ On
persistent-breakpoints.nvim Keeps your breakpoints across sessions. ✅ On
neotest Run and review tests without leaving the editor. ✅ On

UI & Appearance

Dashboard, statusline, folds and visuals.

Add-on Purpose Default
alpha-nvim The Kartoza-branded startup dashboard. ✅ On
lualine.nvim The powerline-bubble statusline. ✅ On
noice.nvim Reimagined cmdline, messages and popupmenu UI. ✅ On
nvim-notify Animated, dismissible notification toasts. ✅ On
barbecue.nvim A VS Code-style breadcrumb winbar. ✅ On
indent-blankline.nvim Indent guides (toggle with a keymap). ✅ On
nvim-colorizer.lua Highlights colour codes with their actual colour. ✅ On
precognition.nvim Shows the motions available from your cursor. ✅ On
smear-cursor.nvim A smooth animated cursor trail. ✅ On
bufferline (nvim) A bubbled tabline of open buffers. ⚪ Off

Files & Terminal

File manager, terminals and undo history.

Add-on Purpose Default
yazi.nvim The primary file manager (Yazi TUI in a float). ✅ On
toggleterm.nvim Managed floating and split terminals. ✅ On
undotree Visualise and traverse the undo history. ✅ On
image.nvim Render images inline via the Kitty graphics protocol. ✅ On

Writing & Docs

Markdown, grammar and note-taking.

Add-on Purpose Default
Markdown tools Live browser preview and Markdown filetype tweaks. ✅ On

Workflow & Extras

Sessions, projects and practice tools.

Add-on Purpose Default
nvim-session-manager Save and restore editing sessions per project. ✅ On
project.nvim Automatic project-root detection and switching. ✅ On
leetcode.nvim Solve LeetCode problems inside Neovim. ✅ On
typr (nvzone) A built-in typing-speed practice game. ✅ On
direnv.vim Loads per-project environments via direnv. ✅ On

See also

The Overview explains how these fit together, and the Developer Guide → Architecture shows how the flake wires them into the editor.