Awesome Neovim Overview
Collections of awesome neovim plugins.
🏠 Home · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 rockerBOO/awesome-neovim · ⭐ 16K · 🏷️ Editors
Awesome Neovim
Collections of awesome Neovim plugins. Mostly targeting Neovim specific features. This means Vim-compatible plugins are not listed here.
Neovim is a Vim-based text editor engineered for extensibility and usability, to encourage new applications and contributions.
Contents
- Plugin Manager
- LSP
- Completion
- AI
- Programming Languages Support
- Language
- Syntax
- Snippet
- Register
- Marks
- Search
- Fuzzy Finder
- File Explorer
- Project
- Color
- Colorscheme
- Bars and Lines
- Startup
- Icon
- Media
- Note Taking
- Utility
- Terminal Integration
- Debugging
- Deployment
- Test
- Code Runner
- Neovim Lua Development
- Fennel
- Dependency Management
- Git
- Motion
- Keybinding
- Mouse
- Scrolling
- Editing Support
- Formatting
- Command Line
- Session
- Remote Development
- Split and Window
- Game
- Workflow
- Preconfigured Configuration
- External
- Wishlist
- UI
- Starter Templates
- Vim
- Resource
Plugin Manager
- lewis6991/pckr.nvim (⭐260) - Spiritual successor of
wbthomason/packer.nvim
. - savq/paq-nvim (⭐652) - Neovim package manager written in Lua.
- NTBBloodbath/cheovim (⭐332) - Neovim configuration switcher written in Lua. Inspired by chemacs.
- folke/lazy.nvim (⭐15k) - A modern plugin manager, featuring a graphical interface, async execution, a lockfile and more.
- roobert/activate.nvim (⭐119) - A plugin installation system designed to complement
folke/lazy.nvim
. - nvim-neorocks/rocks.nvim (⭐720) - A modern approach to plugin management using Luarocks, inspired by Cargo.
- echasnovski/mini.nvim#mini.deps (⭐5.3k) - Module of
mini.nvim
for managing other plugins. Uses Git and built-in packages to install, update, clean, and snapshot plugins.
LSP
(requires Neovim 0.5)
- neovim/nvim-lspconfig (⭐11k) - Quickstart configurations for the LSP client.
- nvim-lua/lsp-status.nvim (⭐632) - This is a plugin/library for generating statusline components from the built-in LSP client.
- RishabhRD/nvim-lsputils (⭐456) - Better defaults for nvim-lsp actions.
- nvimdev/lspsaga.nvim (⭐3.5k) - A light-weight LSP plugin based on Neovim's built-in LSP with a highly performant UI.
- kosayoda/nvim-lightbulb (⭐812) - The plugin shows a lightbulb in the sign column whenever a
textDocument/codeAction
is available at the current cursor position. - roobert/action-hints.nvim (⭐82) - Show information about the word under the cursor in the statusline or as virtual text.
- onsails/lspkind.nvim (⭐1.5k) - The plugin adds vscode-like icons to Neovim LSP completions.
- ojroques/nvim-lspfuzzy (⭐315) - A small plugin to make the LSP client use FZF.
- gfanto/fzf-lsp.nvim (⭐224) - Enable the power of FZF fuzzy search for the Neovim built in LSP.
- ray-x/lsp_signature.nvim (⭐2.1k) - LSP signature hint when you type.
- smjonas/inc-rename.nvim (⭐670) - Provides an incremental LSP rename command based on Neovim's command-preview feature.
- rmagatti/goto-preview (⭐862) - Previewing native LSP's goto definition calls in floating windows.
- jubnzv/virtual-types.nvim (⭐375) - Show type annotations as virtual text.
- marilari88/twoslash-queries.nvim (⭐152) - Provide inline virtual text displaying TypeScript types for the inspected variables.
- ray-x/navigator.lua (⭐1.3k) - Learn existing code quickly and navigate code like a breeze. A swiss army knife makes exploring LSP and Tree-sitter symbols a piece of cake.
- hedyhli/outline.nvim (⭐640) - A significantly enhanced and refactored fork of
symbols-outline.nvim
. - stevearc/aerial.nvim (⭐1.8k) - A code outline window for skimming and quick navigation.
- SmiteshP/nvim-navbuddy (⭐798) - A simple popup display that provides breadcrumbs like navigation features using LSP.
- tamago324/nlsp-settings.nvim (⭐324) - Setup LSP with JSON or YAML files.
- jakewvincent/texmagic.nvim (⭐56) - Enhance the lspconfig settings for Texlab by defining any number of custom LaTeX build engines and selecting them with magic comments.
- aznhe21/actions-preview.nvim (⭐400) - Fully customizable previewer for LSP code actions.
- mfussenegger/nvim-lint (⭐2k) - An asynchronous linter plugin, complementary to the built-in Language Server Protocol support.
- b0o/SchemaStore.nvim (⭐740) - Provide access to the SchemaStore (⭐3.1k) catalog.
- ldelossa/litee.nvim (⭐410) - Neovim's missing IDE features.
- j-hui/fidget.nvim (⭐2k) - Standalone UI for LSP progress.
- scalameta/nvim-metals (⭐471) - Neovim plugin for Metals, the Scala language server, using Neovim's builtin LSP.
- junnplus/lsp-setup.nvim (⭐225) - A simple wrapper for nvim-lspconfig and nvim-lsp-installer to easily setup LSP servers.
- amrbashir/nvim-docs-view (⭐146) - Display LSP hover documentation in a side panel.
- roobert/hoversplit.nvim (⭐39) - Automatically updated documentation and information about code symbols in a split window.
- mfussenegger/nvim-jdtls (⭐1.1k) - Extensions for the built-in LSP support for eclipse.jdt.ls.
- Kasama/nvim-custom-diagnostic-highlight (⭐59) - Inline diagnostics popup-highlight much like coc-nvim but based on
vim.diagnostic
. - mrcjkb/haskell-tools.nvim (⭐479) - Seamless integration of Neovim with Haskell development tools like haskell-language-server and Hoogle.
- ranjithshegde/ccls.nvim (⭐69) - Use off-spec extensions of ccls LSP and browse AST.
- idanarye/nvim-buffls (⭐9) - Add LSP functionality to specific Neovim buffers.
- DNLHC/glance.nvim (⭐728) - A pretty window for previewing, navigating and editing your LSP locations.
- deathbeam/lspecho.nvim (⭐21) - Echo LSP progress to cmdline or embed it in status line.
- linrongbin16/lsp-progress.nvim (⭐213) - A performant LSP progress status.
- jinzhongjia/LspUI.nvim (⭐176) - A modern and useful UI that wraps LSP operations.
- VidocqH/lsp-lens.nvim (⭐275) - Display function references above function definition like IDEA codelens.
- chrisgrieser/nvim-dr-lsp (⭐27) - Status line component showing the number of LSP definition and reference of the token under the cursor.
- Wansmer/symbol-usage.nvim (⭐277) - Display references, definitions and implementations of document symbols.
- creativenull/efmls-configs-nvim (⭐278) - An unofficial collection of linters and formatters configured for efm-langserver to work with builtin LSP.
- creativenull/diagnosticls-configs-nvim (⭐89) - An unofficial collection of linters and formatters configured for diagnostic-languageserver to work with builtin LSP.
- hinell/lsp-timeout.nvim (⭐216) - Automatically start/stop idle/unused LSP servers; keeps RAM usage low.
- nvimtools/none-ls.nvim (⭐2.6k) - Null-ls.nvim reloaded / Use Neovim as a language server to inject LSP diagnostics, code actions, and more via Lua.
- zeioth/none-ls-autoload.nvim (⭐20) - Auto-load/Auto-unload none-ls sources installed with mason. It supports builtin sources and external sources.
- vxpm/ferris.nvim (⭐97) - Interact with Rust-Analyzer's LSP extensions.
- mrcjkb/rustaceanvim (⭐1.8k) - A heavily modified fork of rust-tools.nvim that does not require a
setup
call and does not depend on nvim-lspconfig. - soulis-1256/eagle.nvim (⭐244) - Mouse-hover LSP hints.
- stevanmilic/nvim-lspimport (⭐61) - Automatically resolves imports for undefined terms. Useful with
pyright
language server. - jmbuhr/otter.nvim (⭐526) - Provides LSP features and a nvim-cmp completion source for languages embedded in other documents.
- lopi-py/luau-lsp.nvim (⭐46) - A luau-lsp extension to improve your experience.
- LukasPietzschmann/boo.nvim (⭐33) - Quickly pop-up some LSP-powered information of the thing your cursor is on.
- zeioth/garbage-day.nvim (⭐314) - Garbage collector that stops inactive LSP clients to free RAM.
- rachartier/tiny-inline-diagnostic.nvim (⭐360) - Display prettier diagnostic messages. Display one line diagnostic messages where the cursor is, with icons and colors.
- chrisgrieser/nvim-lsp-endhints (⭐108) - Display LSP inlay hints at the end of the line, rather than within the line.
- rachartier/tiny-code-action.nvim (⭐162) - Provides a simple way to run and visualize code actions with Telescope.
- mawkler/refjump.nvim (⭐43) - Jump to next/previous LSP reference for item under cursor with
]r
/[r
. - alexpasmantier/pymple.nvim (⭐76) - Refactor Python imports on file move/rename.
- esmuellert/nvim-eslint (⭐27) - Bundle VSCode ESLint language server and utilize the native LSP client to provide a all-in-one ESLint experience.
LSP Installer
- anott03/nvim-lspinstall (⭐88) - Easy to install language servers.
- alexaandru/nvim-lspupdate (⭐91) - Updates installed (or auto installs if missing) LSP servers.
- williamboman/mason.nvim (⭐7.9k) - Portable package manager that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.
Diagnostics
- sontungexpt/better-diagnostic-virtual-text (⭐68) - Enhances the display of virtual text for diagnostics. This function aims to provide a more user-friendly and informative presentation of diagnostic messages directly within the editor.
- ~whynothugo/lsp_lines.nvim - Render diagnostics using virtual lines on top of the real line of code.
- onsails/diaglist.nvim (⭐185) - Live render workspace diagnostics in quickfix, buffer diagnostics in loclist.
- folke/trouble.nvim (⭐5.6k) - A pretty diagnostics list to help you solve all the trouble your code is causing.
- piersolenski/wtf.nvim (⭐400) - AI powered diagnostic debugging, helps explain complex errors and offers custom tailored solutions.
- chrisgrieser/nvim-rulebook (⭐75) - Add inline-comments to ignore rules, or lookup rule documentation online.
- artemave/workspace-diagnostics.nvim (⭐162) - Populate diagnostics for all projects files, not just the opened ones.
Completion
- ms-jpq/coq_nvim (⭐3.6k) - Fast as FUCK Neovim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.
- hrsh7th/nvim-cmp (⭐8.1k) - A completion plugin written in Lua. New version of nvim-compe.
- lukas-reineke/cmp-under-comparator (⭐186) - A nvim-cmp function for better sorting.
- SergioRibera/cmp-dotenv (⭐65) - Load environment variables from the shell or from your
.env
files.
- echasnovski/mini.nvim#mini.completion (⭐5.3k) - Module of
mini.nvim
for asynchronous two-stage completion. Supports showing completion item info and independent function signature. - deathbeam/autocomplete.nvim (⭐45) - Very simple and minimal autocompletion for cmdline and buffer using LSP and Tree-sitter with signature help.
- zbirenbaum/copilot.lua (⭐2.8k) - Fully featured Lua replacement for GitHub/copilot.vim (⭐8.5k).
AI
- Aaronik/GPTModels.nvim (⭐57) - GPTModels - a stable, clean, multi model, window based LLM AI tool.
- Robitx/gp.nvim (⭐866) - ChatGPT like sessions and instructable text/code operations in your favorite editor.
- jackMort/ChatGPT.nvim (⭐3.8k) - Effortless Natural Language Generation with OpenAI's ChatGPT API.
- CamdenClark/flyboy (⭐41) - Simple interaction with ChatGPT in a markdown buffer. Supports GPT-4 and Azure OpenAI.
- gsuuon/model.nvim (⭐335) - Integrate LLMs via a prompt builder interface. Multi-providers including OpenAI (+ compatibles), PaLM, HuggingFace and local engines like llamacpp.
- dense-analysis/neural (⭐469) - Integrate LLMs for generating code, interacting with chat bots, and more.
- jpmcb/nvim-llama (⭐259) - LLM (Llama 2 and llama.cpp) wrappers.
- David-Kunz/gen.nvim (⭐1.2k) - Generate text using LLMs (via Ollama) with customizable prompts.
- kiddos/gemini.nvim (⭐30) - Bindings to Google Gemini API.
- olimorris/codecompanion.nvim (⭐1k) - Copilot Chat like experience, complete with inline assistant. Supports Anthropic, Gemini, Ollama and OpenAI.
- simplegpt.nvim (⭐10) - Provide a simple yet flexible way to construct and send questions to ChatGPT.
- Exafunction/codeium.nvim (⭐820) - Free, ultrafast Copilot alternative. Supports LSP and Tree-sitter.
- CopilotC-Nvim/CopilotChat.nvim (⭐1.7k) - A chat interface for GitHub Copilot that allows you to directly ask and receive answers to coding-related questions.
- tzachar/cmp-ai (⭐196) - This is a general purpose AI source for nvim-cmp, easily adapted to any REST API supporting remote code completion.
- milanglacier/minuet-ai.nvim (⭐97) - Minuet offers code completion from popular LLMs including OpenAI (compatible), Gemini, Claude, and more providers. Dance with intelligence in your code.
- yetone/avante.nvim (⭐7.1k) - Chat with your code as if you are in Cursor AI IDE.
- Kurama622/llm.nvim (⭐45) - Free large language model (LLM) support, provides commands to interact with LLM.
- 3v0k4/exit.nvim (⭐7) - Prompt LLMs (large language models) to write Vim commands.
- k2589/LLuMinate.nvim (⭐11) - Enrich context for LLM with LSP hover added to clipboard.
Programming Languages Support
- Julian/lean.nvim (⭐278) - Neovim support for the Lean Theorem Prover.
- nvim-flutter/flutter-tools.nvim (⭐1.1k) - Build Flutter and Dart applications using the native LSP.
- brendalf/mix.nvim (⭐27) - Mix (from Elixir) wrapper plugin.
- AckslD/swenv.nvim (⭐214) - Tiny plugin to quickly switch Python virtual environments without restarting.
- roobert/f-string-toggle.nvim (⭐31) - Toggle Python f-strings.
- gennaro-tedesco/nvim-jqx (⭐301) - Interactive interface for JSON files.
- nanotee/sqls.nvim (⭐190) - SQL database connection plugin + LSP client.
- dmmulroy/tsc.nvim (⭐404) - Asynchronous project-wide TypeScript type-checking using the TypeScript compiler (TSC) with results loaded into a quickfix list.
- dmmulroy/ts-error-translator.nvim (⭐245) - A port of Matt Pocock's ts-error-translator for VSCode for turning messy and confusing TypeScript errors into plain English.
- chuwy/ucm.nvim (⭐6) - Navigating Unison projects.
- niuiic/typst-preview.nvim (⭐33) - Preview typst documents, respond to file changes.
- simaxme/java.nvim (⭐23) - Some utilities regarding Java development (e.g. updating symbol usages when renaming or moving a file in nvim-tree).
- chomosuke/typst-preview.nvim (⭐309) - Preview typst documents in the browser, instant update on each keystroke, and cross jump between code and preview.
- quarto-dev/quarto-nvim (⭐355) - Tools for working with Quarto documents.
- iabdelkareem/csharp.nvim (⭐226) - Enhances the development experience for .NET developers.
- jim-at-jibba/micropython.nvim (⭐39) - Enhances the development experience for developers using Micro-python for IoT and maker projects.
- neolooong/whichpy.nvim (⭐14) - Switch Python interpreter without restarting LSP.
Golang
- ray-x/go.nvim (⭐2.1k) - Golang plugin based on LSP and Tree-sitter.
- crusj/structrue-go.nvim (⭐42) - A better structured display of Golang symbols information.
- crispgm/nvim-go (⭐137) - A minimal implementation of Golang development plugin.
- edolphin-ydf/goimpl.nvim (⭐57) - Generate interface stubs for a type.
- olexsmir/gopher.nvim (⭐320) - Plugin for making Golang development easiest.
- rafaelsq/nvim-goc.lua (⭐48) - Highlight your buffer with Golang Code Coverage.
- crusj/hierarchy-tree-go.nvim (⭐29) - Neovim plugin for Golang, callHierarchy UI tree.
- yanskun/gotests.nvim (⭐21) - Make Go tests easy with gotests (⭐5k).
- maxandron/goplements.nvim (⭐59) - Visualize Go struct and interface implementations.
- Snikimonkd/cmp-go-pkgs (⭐16) - Cmp source for Go packages names.
YAML
- someone-stole-my-name/yaml-companion.nvim (⭐232) - Get, set and autodetect YAML schemas in your buffers.
- cuducos/yaml.nvim (⭐198) - Utils to work with YAML files.
Web Development
- rest-nvim/rest.nvim (⭐1.6k) - A fast Neovim HTTP client written in Lua.
- lima1909/resty.nvim (⭐34) - Fast and easy-to-use HTTP-Rest-Client.
- mistweaverco/kulala.nvim (⭐670) - A minimal HTTP-client interface.
- ray-x/web-tools.nvim (⭐156) - Launch a local development server with live reload feature for static & dynamic pages, HTML & CSS tag rename with LSP.
- roobert/tailwindcss-colorizer-cmp.nvim (⭐335) - Add vscode-style TailwindCSS completion to nvim-cmp.
- luckasRanarison/tailwind-tools.nvim (⭐390) - Unofficial TailwindCSS tooling.
- cjodo/convert.nvim (⭐46) - A tool for CSS unit conversions.
- farias-hecdin/CSSVarViewer (⭐8) - Easily visualize the content of your CSS variables in a virtual text.
- farias-hecdin/CSSVarHighlight (⭐4) - Quickly highlight the color you defined in your CSS variables with the help of
mini.hipatterns
.
Markdown and LaTeX
- ellisonleao/glow.nvim (⭐1.3k) - Markdown preview using glow.
- iamcco/markdown-preview.nvim (⭐6.8k) - Preview markdown on your modern browser with synchronised scrolling and flexible configuration.
- davidgranstrom/nvim-markdown-preview (⭐105) - Markdown preview in the browser using pandoc and live-server through Neovim's job-control API.
- jghauser/auto-pandoc.nvim (⭐34) - Easy pandoc conversion leveraging YAML blocks.
- jghauser/follow-md-links.nvim (⭐143) - Press enter to follow internal markdown links.
- jubnzv/mdeval.nvim (⭐194) - Evaluate code blocks inside markdown documents.
- kdheepak/panvimdoc (⭐263) - A pandoc to vimdoc GitHub action.
- frabjous/knap (⭐351) - Plugin for creating automatic updating-as-you-type previews for markdown, LaTeX and other documents.
- jbyuki/carrot.nvim (⭐24) - Markdown evaluator Lua code blocks.
- AckslD/nvim-FeMaco.lua (⭐322) - Catalyze your Fenced Markdown Code-block editing.
- Nedra1998/nvim-mdlink (⭐25) - Simplify creating and following markdown links.
- nfrid/markdown-togglecheck (⭐20) - Simple Neovim plugin for toggling check boxes using Tree-sitter.
- toppair/peek.nvim (⭐654) - Preview markdown in a webview window.
- yaocccc/nvim-hl-mdcodeblock.lua (⭐36) - Highlight markdown codeblock using Tree-sitter.
- kiran94/edit-markdown-table.nvim (⭐26) - Edit Markdown Tables using Tree-sitter.
- richardbizik/nvim-toc (⭐37) - Easily generate table of contents for markdown files.
- Zeioth/markmap.nvim (⭐167) - Visualize your Markdown as mindmaps.
- tadmccorkle/markdown.nvim (⭐154) - Configurable tools for markdown files, including inline-style, link, and navigation keymaps, table of contents, improved list editing, and more.
- mpas/marp-nvim (⭐26) - Present using markdown with Marp.
- Myzel394/easytables.nvim (⭐99) - Easily insert and edit markdown tables with a live preview and useful helpers.
- MeanderingProgrammer/render-markdown.nvim (⭐1.8k) - Improve viewing markdown files directly.
- arminveres/md-pdf.nvim (⭐69) - Preview markdown files and convert to PDF.
- ChuufMaster/markdown-toc (⭐17) - Generate TOC in any markdown file from any other markdown file with customisable levels of headings and affordances for emojis and ensuring that it works on GitHub using relative paths.
- OXY2DEV/markview.nvim (⭐1.4k) - Highly customisable markdown(latex & inline html) previewer.
- Kicamon/markdown-table-mode.nvim (⭐58) - Markdown format plugin like vim-table-mode but write in Lua.
- SCJangra/table-nvim (⭐29) - A markdown table editor that formats the table as you type.
PHP
- gbprod/phpactor.nvim (⭐73) - Lua version of the Phpactor Vim plugin to take advantage of the latest Neovim features.
- ta-tikoma/php.easy.nvim (⭐18) - Methods of assistance in PHP development: create classes, constants, methods, properties; simple copying and deleting of an entity.
Language
- potamides/pantran.nvim (⭐298) - Translate your text with an interactive translation window.
- niuiic/translate.nvim (⭐39) - Invoke any translation engine via shell command.
- tanloong/interlaced.nvim (⭐6) - Help align bilingual parallel texts.
Syntax
- nvim-treesitter/nvim-treesitter (⭐11k) - Neovim Tree-sitter configurations and abstraction layer.
- nvim-treesitter/nvim-treesitter-textobjects (⭐2.2k) - Create your own textobjects using Tree-sitter queries.
- RRethy/nvim-treesitter-textsubjects (⭐516) - Location and syntax aware text objects which do what you mean.
- kylechui/nvim-surround (⭐3.3k) - A plugin for adding/changing/deleting surrounding delimiter pairs.
- roobert/surround-ui.nvim (⭐83) - Helper or training aid for kylechui/nvim-surround.
- echasnovski/mini.nvim#mini.surround (⭐5.3k) - Module of
mini.nvim
for working with text surroundings (add, delete, replace, find, highlight). Supports dot-repeat, different search methods, "last"/"next" extended mappings, Tree-sitter integration, and more. - m-demare/hlargs.nvim (⭐473) - Highlight arguments' definitions and usages, using Tree-sitter.
- LhKipp/nvim-nu (⭐140) - Basic editor support for the nushell language.
- desdic/agrolens.nvim (⭐51) - Navigate via Tree-sitter nodes using Telescope.
- IndianBoy42/tree-sitter-just (⭐146) - Tree-sitter grammar for Justfiles (⭐21k).
Snippet
- norcalli/snippets.nvim (⭐277) - Snippets in Lua.
- L3MON4D3/LuaSnip (⭐3.5k) - A snippet engine written in Lua.
- smjonas/snippet-converter.nvim (⭐176) - Convert snippets between the most common snippet formats and modify them using a few lines of Lua code.
- dcampos/nvim-snippy (⭐319) - Snippet plugin written in Lua with support for vim-snippets (⭐4.8k).
- ellisonleao/carbon-now.nvim (⭐175) - Create beautiful code snippets directly from Neovim.
- TobinPalmer/rayso.nvim (⭐76) - Create code snippets in Neovim using ray.so.
- mrcjkb/haskell-snippets.nvim (⭐29) - Haskell snippets for LuaSnip, powered by Tree-sitter and LSP.
- rafamadriz/friendly-snippets (⭐2k) - Set of preconfigured snippets for different languages.
- cvigilv/esqueleto.nvim (⭐99) - Simple templates to use when creating new files.
- chrisgrieser/nvim-scissors (⭐383) - Automagical editing and creation of snippets.
- guilherme-puida/tesoura.nvim (⭐29) - A flexible snippet system using Neovim's new snippet API.
Register
- gennaro-tedesco/nvim-peekup (⭐302) - Dynamically interact with Vim registers.
- tversteeg/registers.nvim (⭐607) - Non-obtrusive minimal preview of Vim registers.
- acksld/nvim-neoclip.lua (⭐1k) - Clipboard manager Neovim plugin with telescope integration.
- tenxsoydev/karen-yank.nvim (⭐81) - More intentional register handling with delete, cut and yank mappings.
- desdic/macrothis.nvim (⭐25) - Save and load macros/registers.
- kr40/nvim-macros (⭐54) - Easy way to save and load Macros, with backup and formatting options.
Marks
- cbochs/grapple.nvim (⭐563) - Provides tagging, cursor tracking, and immediate navigation to important project files.
- chentoast/marks.nvim (⭐876) - A better user experience for viewing and interacting with Vim marks.
- ThePrimeagen/harpoon (⭐7.1k) - A per project, auto updating and editable marks utility for fast file navigation.
- otavioschwanck/arrow.nvim (⭐525) - Like harpoon, but with a different UX, single keybinding needed and statusline support.
- ofirgall/open.nvim (⭐64) - Open the current word with custom openers, GitHub shorthand for example.
- LeonHeidelbach/trailblazer.nvim (⭐240) - TrailBlazer introduces a stack based mark system that enables a completely new dynamic and super fast workflow using project wide marks.
- tomasky/bookmarks.nvim (⭐159) - Bookmarks with global file storage, written in Lua.
- LintaoAmons/bookmarks.nvim (⭐172) - Your new bookmarks option: simple yet powerful.
- desdic/marlin.nvim (⭐20) - Like harpoon, but with key differences like project path, split support, no UI.
- fnune/recall.nvim (⭐41) - Recall refines the use of marks by focusing on global marks, streamlining their usage and enhancing their visibility and navigability.
- niuiic/track.nvim (⭐23) - Enhanced mark with description. Track the thought process of reading source code.
- tristone13th/lspmark.nvim (⭐54) - Sane project-wise bookmarks with persistent storage based on LSP.
- EvWilson/spelunk.nvim (⭐59) - Create and manage bookmarks as stacks with a friendly UI.
- 2KAbhishek/markit.nvim (⭐11) - Improved global marks and project wide bookmarks, to quickly navigate files.
Search
- kevinhwang91/nvim-hlslens (⭐767) - Helps you better glance searched information, seamlessly jump matched instances.
- rktjmp/highlight-current-n.nvim (⭐89) - Highlights the current /, ? or * match under your cursor when pressing n or N and gets out of the way afterwards.
- gaborvecsei/memento.nvim (⭐63) - Keeps track of your visited file history after a buffer is closed. Reopen files more easily.
- ray-x/sad.nvim (⭐193) - Space Age seD in Neovim. Batch file edit tool, a wrapper for sad (⭐1.8k)
- s1n7ax/nvim-search-and-replace (⭐72) - Search and replace in multiple files at the same time from the current working directory.
- roobert/search-replace.nvim (⭐217) - Builds on the native search and replace experience.
- AckslD/muren.nvim (⭐363) - Multiple replacements through interactive UI.
- nvim-pack/nvim-spectre (⭐2.1k) - Search and replace panel.
- nvimdev/hlsearch.nvim (⭐73) - Auto remove search highlight and rehighlight when using n or N.
- mangelozzi/rgflow.nvim (⭐91) - Quickly get RipGrep results into an editable Quickfix list, while learning RipGrep's CLI.
- duane9/nvim-rg (⭐38) - Run RipGrep asynchronously and see results in a quickfix window.
- FabianWirth/search.nvim (⭐178) - Tabs for different Telescope pickers.
- backdround/improved-search.nvim (⭐55) - Add search abilities.
- polirritmico/telescope-lazy-plugins.nvim (⭐55) - A Telescope picker to quickly access plugins configurations from the lazy.nvim spec.
- MagicDuck/grug-far.nvim (⭐840) - Buffer-based live search and replace with full power of
rg
flags. Grug like! - chrisgrieser/nvim-rip-substitute (⭐189) - Search and replace in the current buffer with a modern UI and modern regex flavor. A substitute for Vim's
:substitute
usingripgrep
.
Fuzzy Finder
- nvim-telescope/telescope.nvim (⭐16k) - Telescope.nvim is a highly extendable (⭐16k) fuzzy finder over lists. Built on the latest awesome features from Neovim core. Telescope is centered around modularity, allowing for easy customization.
- vijaymarupudi/nvim-fzf (⭐341) - A Lua API for using FZF (Neovim >= 0.5). Allows for full asynchronicity for UI speed and usability.
- camspiers/snap (⭐488) - An extensible fuzzy finder. Similar to Telescope, and optimized for performance, especially when grepping in large codebases.
- ibhagwan/fzf-lua (⭐2.3k) - The Lua version of
fzf.vim
, high-performance and fully async, supportsnvim-web-devicons
, Git indicators, LSP, quickfix/location lists and more. Also supportsskim
as its fzf binary. - jvgrootveld/telescope-zoxide (⭐318) - Telescope integration for zoxide (⭐23k), a smart directory picker that tracks your usage.
- echasnovski/mini.nvim#mini.fuzzy (⭐5.3k) - Module of
mini.nvim
with functions to perform fuzzy matching of one string to others along with fast Telescope sorter. - axkirillov/easypick.nvim (⭐389) - Easypick lets you easily create Telescope pickers from arbitrary console commands.
- linrongbin16/fzfx.nvim (⭐125) - A fuzzy finder that updates on every keystroke.
- echasnovski/mini.nvim#mini.pick (⭐5.3k) - Module of
mini.nvim
with general purpose interactive non-blocking picker that has one window design, toggleable preview, flexible and fast default match, and much more. - echasnovski/mini.nvim#mini.extra (⭐5.3k) - Module of
mini.nvim
with extra functionality for its modules. Contains 20+ 'mini.pick' pickers, 'mini.ai' textobjects, and more. - fdschmidt93/telescope-egrepify.nvim (⭐123) - Telescope plugin for better
rg
flags inlive_grep
. - crispgm/telescope-heading.nvim (⭐126) - Telescope extension to switch between headings of AsciiDoc, Markdown, Vimdoc, etc.
File Explorer
- nvim-tree/nvim-tree.lua (⭐7.2k) - A simple and fast file explorer tree.
- luukvbaal/nnn.nvim (⭐428) - File explorer powered by nnn (⭐19k) and Lua.
- tamago324/lir.nvim (⭐355) - Simple file explorer.
- TimUntersberger/neofs (⭐70) - A file manager written in Lua.
- kevinhwang91/rnvimr (⭐817) - A simple yet amazing file explorer.
- Xuyuanp/yanil (⭐97) - Yet Another Nerdtree In Lua.
- ms-jpq/chadtree (⭐1.7k) - File manager. Better than NERDTree.
- is0n/fm-nvim (⭐272) - Neovim plugin that lets you use your favorite terminal file managers (and fuzzy finders).
- rolv-apneseth/tfm.nvim (⭐82) - Similar to
fm-nvim
, this provides Neovim integration for several popular terminal file managers (including yazi (⭐16k)). - nvim-neo-tree/neo-tree.nvim (⭐3.9k) - Neo-tree is a Neovim plugin to browse the file system and other tree like structures in whatever style suits you, including sidebars, floating windows, netrw split style, or all of them at once.
- elihunter173/dirbuf.nvim (⭐432) - A file manager which lets you edit your filesystem like you edit text.
- theblob42/drex.nvim (⭐96) - A simple and configurable file explorer written in Lua.
- SidOfc/carbon.nvim (⭐178) - The simple directory tree viewer written in Lua.
- dinhhuy258/sfm.nvim (⭐59) - An alternative to Nvim-tree designed to be extensible and minimalist.
- kiran94/s3edit.nvim (⭐44) - Edit files from Amazon S3 directly from Neovim.
- stevearc/oil.nvim (⭐4.1k) - Edit your filesystem like a buffer.
- kelly-lin/ranger.nvim (⭐153) - Ranger (⭐16k) integration for Neovim.
- simonmclean/triptych.nvim (⭐194) - A directory browser inspired by Ranger.
- echasnovski/mini.nvim#mini.files (⭐5.3k) - Module of
mini.nvim
providing file explorer with column view capable of manipulating file system by editing text. Can create/delete/rename/copy/move files/directories inside and across directories. - prichrd/netrw.nvim (⭐218) - Add icons and custom keybindings to netrw.
- neotree-file-nesting-config (⭐18) - Pre-defined file nesting rules for
neo-tree.nvim
.
Project
- pluffie/neoproj (⭐67) - Small yet powerful project (and session) manager.
- Abstract-IDE/penvim (⭐51) - Project's root directory and documents Indentation detector with project based config loader.
- windwp/nvim-projectconfig (⭐105) - Load Neovim config depend on project directory.
- ahmedkhalf/project.nvim (⭐1.4k) - An all in one Neovim plugin that provides superior project management.
- klen/nvim-config-local (⭐150) - Secure load local config files from working directories.
- cljoly/telescope-repo.nvim - Telescope picker to jump to any repository (Git or other) on the file system.
- otavioschwanck/telescope-alternate.nvim (⭐107) - Alternate between common files using telescope.
- natecraddock/workspaces.nvim (⭐322) - Manage workspace directories.
- GnikDroy/projections.nvim (⭐236) - Tiny project + session manager.
- nyngwang/suave.lua (⭐64) - Multi-tabs project session automation.
- desdic/telescope-rooter.nvim (⭐21) - Makes sure to always start telescope (and only telescope) from the project/root directory.
- SalOrak/whaler.nvim (⭐56) - Telescope extension to move between directories blazingly fast.
- echasnovski/mini.nvim#mini.visits (⭐5.3k) - Module of
mini.nvim
to persistently track and reuse file system visits. Allows listing "recent"/"frequent"/"frecent" visits, adding/removing labels to visits and other data. - LintaoAmons/cd-project.nvim (⭐112) - All you need is just an easier way to
cd
to another project directory.
Color
- NvChad/nvim-colorizer.lua (⭐735) - A high-performance color highlighter which has no external dependencies!.
- winston0410/range-highlight.nvim (⭐204) - An extremely lightweight plugin (~ 120loc) that highlights ranges you have entered in commandline.
- xiyaowong/transparent.nvim (⭐872) - Make your Neovim transparent.
- folke/twilight.nvim (⭐1.3k) - Dim inactive portions of the code you're editing using Tree-sitter.
- koenverburg/peepsight.nvim (⭐110) - Focus only the function your cursor is in.
- uga-rosa/ccc.nvim (⭐779) - Super powerful color picker / colorizer plugin.
- ziontee113/color-picker.nvim (⭐283) - Plugin that lets users choose & modify RGB/HSL/HEX colors inside Neovim.
- lcheylus/overlength.nvim (⭐46) - A small plugin to highlight too long lines.
- brenoprata10/nvim-highlight-colors (⭐715) - A plugin to highlight colors with Neovim.
- max397574/colortils.nvim (⭐395) - A plugin providing utils to work with colors (picker, conversion) inside Neovim.
- Mr-LLLLL/interestingwords.nvim (⭐44) - Highlight multiple word same time and navigate word under cursor with scrolling smoothly, display search count in virualtext.
- echasnovski/mini.nvim#mini.hipatterns (⭐5.3k) - Module of
mini.nvim
to highlight patterns in text with configurable highlighters. Works asynchronously with configurable debounce delay. - miversen33/sunglasses.nvim (⭐130) - Dynamic Colorscheme/highlight adjuster on window switching.
- rasulomaroff/reactive.nvim (⭐197) - Set global and window-specific highlights or trigger callbacks when modes/operators change or windows are switched.
- moyiz/command-and-cursor.nvim (⭐16) - Highlight cursor and visual selections when entering command mode.
- rachartier/tiny-devicons-auto-colors.nvim (⭐106) - Automatically updates nvim-web-devicons colors based on your current colorscheme.
Colorscheme
Tree-sitter Supported Colorscheme
Tree-sitter is a new system introduced in Neovim 0.5 that incrementally parses your code into a tree that works, even with errors in your syntax. These colorschemes have specifically set colors for Tree-sitter highlight groups. Vim colorschemes will work with the new groups out of the box.
- sontungexpt/witch (⭐44) - The primary stinvim distro colorscheme includes the default feature of dimming inactive windows, along with various other customization options for users.
- Abstract-IDE/Abstract-cs (⭐88) - Colorscheme written in Lua, specially made for roshnivim with Tree-sitter support.
- rafamadriz/neon (⭐183) - Customizable colorscheme with excellent italic and bold support, dark and light variants. Made to work and look good with Tree-sitter.
- tomasiser/vim-code-dark (⭐956) - A dark color scheme heavily inspired by the look of the Dark+ scheme of Visual Studio Code.
- Mofiqul/vscode.nvim (⭐717) - A Lua port of vim-code-dark colorscheme with vscode light and dark theme.
- askfiy/visual_studio_code (⭐176) - A Neovim theme that highly restores vscode, so that your friends will no longer be surprised that you use Neovim, because they will think you are using vscode.
- marko-cerovac/material.nvim (⭐994) - Material.nvim is a highly configurable colorscheme written in Lua and based on the material palette.
- bluz71/vim-nightfly-colors (⭐822) - A dark midnight colorscheme with modern Neovim support including Tree-sitter.
- bluz71/vim-moonfly-colors (⭐873) - A dark charcoal colorscheme with modern Neovim support including Tree-sitter.
- ChristianChiarulli/nvcode-color-schemes.vim (⭐304) - Nvcode, onedark, nord colorschemes with Tree-sitter support.
- folke/tokyonight.nvim (⭐6.4k) - A clean, dark and light Neovim theme written in Lua, with support for LSP, Tree-sitter and lots of plugins.
- comfysage/evergarden (⭐130) - A comfy Neovim colorscheme for cozy morning coding.
- sainnhe/sonokai (⭐1.7k) - High Contrast & Vivid Color Scheme based on Monokai Pro.
- nyoom-engineering/oxocarbon.nvim (⭐1.2k) - A dark and light Neovim theme written in fennel, inspired by IBM Carbon.
- kyazdani42/blue-moon (⭐219) - A dark color scheme derived from palenight and carbonight.
- mhartington/oceanic-next (⭐1.1k) - Oceanic Next theme.
- nvimdev/zephyr-nvim (⭐345) - A dark colorscheme with Tree-sitter support.
- rockerBOO/boo-colorscheme-nvim (⭐200) - A colorscheme with handcrafted support for LSP, Tree-sitter.
- jim-at-jibba/ariake.nvim (⭐17) - A port of the great Atom theme. Beautiful, dark colour scheme.
- Th3Whit3Wolf/onebuddy (⭐101) - Light and dark atom one theme.
- ishan9299/modus-theme-vim (⭐168) - This is a color scheme developed by Protesilaos Stavrou for emacs.
- sainnhe/edge (⭐894) - Clean & Elegant Color Scheme inspired by Atom One and Material.
- theniceboy/nvim-deus (⭐71) - Vim-deus with Tree-sitter support.
- bkegley/gloombuddy (⭐47) - Gloom inspired theme.
- Th3Whit3Wolf/one-nvim (⭐113) - An Atom One inspired dark and light colorscheme.
- PHSix/nvim-hybrid (⭐26) - A Neovim colorscheme write in Lua.
- Th3Whit3Wolf/space-nvim (⭐47) - A spacemacs inspired dark and light colorscheme.
- yonlu/omni.vim (⭐88) - Omni color scheme for Vim.
- ray-x/aurora (⭐348) - A 24-bit dark theme with Tree-sitter and LSP support.
- ray-x/starry.nvim (⭐223) - A collection of modern Neovim colorschemes: material, moonlight, dracula (blood), monokai, mariana, emerald, earlysummer, middlenight_blue, darksolar.
- tanvirtin/monokai.nvim (⭐353) - Monokai theme written in Lua.
- ofirgall/ofirkai.nvim (⭐124) - Monokai theme that aims to feel like Sublime Text.
- savq/melange-nvim (⭐724) - Warm colorscheme written in Lua with support for various terminal emulators.
- RRethy/base16-nvim (⭐518) - Neovim plugin for building base16 colorschemes. Includes support for Tree-sitter and LSP highlight groups.
- fenetikm/falcon (⭐727) - A colour scheme for terminals, Vim and friends.
- andersevenrud/nordic.nvim (⭐174) - A nord-esque colorscheme.
- AlexvZyl/nordic.nvim (⭐725) - Nord for Neovim, but warmer and darker. Supports a variety of plugins and other platforms.
- shaunsingh/nord.nvim (⭐849) - Neovim theme based off of the Nord Color Palette.
- Tsuzat/NeoSolarized.nvim (⭐174) - NeoSolarized colorscheme with full transparency.
- svrana/neosolarized.nvim (⭐157) - Dark solarized colorscheme using colorbuddy for easy customization.
- ishan9299/nvim-solarized-lua (⭐183) - Solarized colorscheme in Lua (Neovim >= 0.5).
- jthvai/lavender.nvim - Purple-hued dark mode colorscheme; a complete rewrite of shaunsingh/moonlight.nvim.
- navarasu/onedark.nvim (⭐1.6k) - A One Dark Theme (Neovim >= 0.5) written in Lua based on Atom's One Dark Theme.
- sainnhe/gruvbox-material (⭐1.9k) - Gruvbox modification with softer contrast and Tree-sitter support.
- sainnhe/everforest (⭐2.9k) - A green based colorscheme designed to be warm, soft and easy on the eyes.
- neanias/everforest-nvim (⭐267) - A Lua port of the Everforest colour scheme.
- NTBBloodbath/doom-one.nvim (⭐214) - Lua port of doom-emacs' doom-one.
- dracula/vim (⭐1.3k) - Famous beautiful dark powered theme.
- Mofiqul/dracula.nvim (⭐633) - Dracula colorscheme for Neovim written in Lua.
- niyabits/calvera-dark.nvim (⭐153) - A port of VSCode Calvara Dark (⭐12) Theme to Neovim with Tree-sitter and many other plugins support.
- nxvu699134/vn-night.nvim (⭐42) - A dark Neovim colorscheme written in Lua. Support built-in LSP and Tree-sitter.
- adisen99/codeschool.nvim (⭐43) - Codeschool colorscheme written in Lua with Tree-sitter and built-in LSP support.
- projekt0n/github-nvim-theme (⭐2.1k) - A GitHub theme, kitty, alacritty written in Lua. Support built-in LSP and Tree-sitter.
- kdheepak/monochrome.nvim (⭐109) - A 16 bit monochrome colorscheme that uses hsluv for perceptually distinct gray colors, with support for Tree-sitter and other commonly used plugins.
- rose-pine/neovim (⭐2.3k) - All natural pine, faux fur and a bit of soho vibes for the classy minimalist.
- zenbones-theme/zenbones.nvim (⭐757) - A collection of Vim/Neovim colorschemes designed to highlight code using contrasts and font variations.
- catppuccin/nvim (⭐5.6k) - Warm mid-tone dark theme to show off your vibrant self! With support for native LSP, Tree-sitter, and more.
- FrenzyExists/aquarium-vim (⭐288) - A dark, yet vibrant colorscheme.
- EdenEast/nightfox.nvim (⭐3.2k) - A soft dark, fully customizable Neovim theme, with support for LSP, Tree-sitter and a variety of plugins.
- kvrohit/substrata.nvim (⭐129) - A cold, dark color scheme written in Lua ported from arzg/vim-substrata (⭐195) theme.
- ldelossa/vimdark (⭐69) - A minimal Vim theme for night time. Loosely based on vim-monotonic and chrome's dark reader extension. A light theme is included as well for the day time.
- Everblush/nvim (⭐245) - A dark, vibrant and beautiful colorscheme written in Lua.
- adisen99/apprentice.nvim (⭐45) - Colorscheme written in Lua based on the Apprentice (⭐892) color palette with Tree-sitter and built-in LSP support.
- olimorris/onedarkpro.nvim (⭐804) - Atom's iconic One Dark theme. Cacheable, fully customisable, Tree-sitter and LSP semantic token support. Comes with light and dark variants.
- rmehri01/onenord.nvim (⭐527) - A Neovim theme that combines the Nord and Atom One Dark color palettes for a more vibrant programming experience.
- RishabhRD/gruvy (⭐16) - Gruvbuddy without colorbuddy using Lush.
- echasnovski/mini.nvim#colorschemes (⭐5.3k) - Color schemes included in
mini.nvim
plugin. All of them prioritize high contrast ratio for reading text and computing palettes in perceptually uniform color spaces. - luisiacc/gruvbox-baby (⭐399) - A modern gruvbox theme with full Tree-sitter support.
- titanzero/zephyrium (⭐22) - A zephyr-esque theme, written in Lua, with Tree-sitter support.
- rebelot/kanagawa.nvim (⭐4.3k) - Neovim dark colorscheme inspired by the colors of the famous painting by Katsushika Hokusai.
- sho-87/kanagawa-paper.nvim (⭐126) - Remixed Kanagawa colourscheme with muted colors.
- kevinm6/kurayami.nvim (⭐6) - Dark (only) theme.
- tiagovla/tokyodark.nvim (⭐484) - A clean dark theme written in Lua (Neovim >= 0.5) and above.
- cpea2506/one_monokai.nvim (⭐170) - One Monokai theme written in Lua.
- phha/zenburn.nvim (⭐99) - A low-contrast dark colorscheme with support for various plugins.
- kvrohit/rasmus.nvim (⭐166) - A dark color scheme written in Lua ported from rsms/sublime-theme (⭐193) theme.
- chrsm/paramount-ng.nvim (⭐19) - A dark color scheme written using Lush. Tree-sitter supported.
- lmburns/kimbox (⭐69) - A colorscheme with a dark background, and vibrant foreground that is centered around the color brown. A modification of Kimbie Dark.
- qaptoR-nvim/chocolatier.nvim (⭐11) - An espresso/kimbie inspired chocolatey theme adapted from ellisonleao/gruvbox.nvim theme as a code template.
- rockyzhang24/arctic.nvim (⭐170) - A Neovim colorscheme ported from VSCode Dark+ theme with the strict and precise color picking for both the editor and UI.
- ramojus/mellifluous.nvim (⭐319) - Pleasant and productive colorscheme.
- Yazeed1s/minimal.nvim (⭐180) - Two Tree-sitter supported colorschemes that are inspired by base16-tomorrow-night and monokai-pro.
- lewpoly/sherbet.nvim (⭐72) - A soothing colorscheme with support for popular plugins and Tree-sitter.
- Mofiqul/adwaita.nvim (⭐229) - Colorscheme based on GNOME Adwaita syntax with support for popular plugins.
- olivercederborg/poimandres.nvim (⭐400) - Neovim port of poimandres VSCode theme (⭐407) with Tree-sitter support, written in Lua.
- mellow-theme/mellow.nvim (⭐315) - A soothing dark color scheme with Tree-sitter support.
- gbprod/nord.nvim (⭐192) - An arctic, north-bluish clean and elegant Neovim theme, based on Nord Palette.
- Yazeed1s/oh-lucy.nvim (⭐226) - Two Tree-sitter supported colorschemes, inspired by oh-lucy in vscode.
- embark-theme/vim (⭐661) - A deep inky purple theme leveraging bright colors.
- nyngwang/nvimgelion (⭐120) - Neon Genesis Evangelion but for Vimmers.
- maxmx03/fluoromachine.nvim (⭐235) - Synthwave x Fluoromachine port.
- dasupradyumna/midnight.nvim (⭐202) - A modern black Neovim theme with comfortable color contrast for a pleasant visual experience, with LSP and Tree-sitter support.
- sonjiku/yawnc.nvim (⭐14) - Theming using pywal, with a Base16 twist.
- uncleTen276/dark_flat.nvim (⭐45) - A Neovim colorscheme written in Lua ported from Dark Flat iTerm2 theme, with LSP and Tree-sitter support.
- zootedb0t/citruszest.nvim (⭐162) - A colorscheme that features a combination of bright and juicy colors reminiscent of various citrus fruits, with LSP and Tree-sitter support.
- 2nthony/vitesse.nvim (⭐57) - Vitesse theme Lua port.
- xero/miasma.nvim (⭐240) - A dark pastel color scheme inspired by the woods. Built using lush and supports Tree-sitter, diagnostics, CMP, Git-Signs, Telescope, Which-key, Lazy, and more.
- Verf/deepwhite.nvim (⭐111) - A light colorscheme inspired by flatwhite-syntax (⭐169) and elegant-emacs (⭐1.4k).
- judaew/ronny.nvim (⭐16) - A dark colorscheme, which mostly was inspired by the Monokai originally created by Wimem Hazenberg.
- ribru17/bamboo.nvim (⭐321) - A warm green theme.
- cryptomilk/nightcity.nvim (⭐57) - A dark colorscheme inspired by Inkpot, Jellybeans, Gruvbox and Tokyonight with LSP support.
- polirritmico/monokai-nightasty.nvim (⭐115) - A dark/light theme based on the Monokai color palette written in Lua, support for LSP, Tree-sitter and lots of plugins.
- oxfist/night-owl.nvim (⭐252) - A Night Owl colorscheme port from VSCode (⭐2.8k) with support for Tree-sitter and semantic tokens.
- text-to-colorscheme (⭐296) - Dynamically generated colorschemes generated on the fly with a text prompt using ChatGPT.
- miikanissi/modus-themes.nvim (⭐222) - Accessible theme, conforming with the highest standard for color contrast (WCAG AAA).
- alexmozaidze/palenight.nvim (⭐19) - Palenight colorscheme supporting Tree-sitter, LSP (including semantic tokens) and lots of plugins.
- scottmckendry/cyberdream.nvim (⭐735) - A high-contrast, futuristic & vibrant coloursheme.
- HoNamDuong/hybrid.nvim (⭐95) - A dark theme written in Lua.
- sxwpb/halfspace.nvim - A semi-light colorscheme for minimal eye melting.
- bartekjaszczak/distinct-nvim - Theme with distinct syntax colours. Supports Tree-sitter and semantic highlighting. For people who love multi-colour syntax highlighting.
- samharju/synthweave.nvim (⭐45) - Synthwave '84 colorscheme port.
- loganswartz/sunburn.nvim (⭐15) - A colorscheme sitting somewhere between pastels and solarized, emphasizing readability and hue uniformity above all else.
- ptdewey/darkearth-nvim (⭐43) - A dark and earthy colorscheme supporting Tree-sitter and LSP.
- uloco/bluloco.nvim (⭐298) - A fancy and sophisticated colorscheme for night and day coding. Supports LSP, Tree-sitter and all the plugins you love.
- slugbyte/lackluster.nvim (⭐261) - A delightful mostly grayscale colorscheme that is soft on the eyes, and supports heaps of plugins.
- 0xstepit/flow.nvim (⭐187) - Carefully designed colors to help focusing during coding plus fluorescent details. Support many plugins and tools.
- samharju/serene.nvim (⭐33) - A soothing and dark Tree-sitter/LSP-supported theme for relaxing your eyes after using more vibrant colorschemes.
- killitar/obscure.nvim (⭐50) - A pastel dark colorscheme inspired by the palette Mellow. Support Tree-sitter, LSP (including semantic tokens) and lots of plugins.
- bakageddy/alduin.nvim (⭐7) - A port of alduin (⭐451) theme to Lua with Tree-sitter and semantic highlights support.
- diegoulloao/neofusion.nvim (⭐192) - A theme compatible with Tree-sitter inspired by
gruvbox.nvim
. - bartekjaszczak/luma-nvim - A colorful theme with dark/light modes and adjustable contrast. Supports Tree-sitter and semantic highlighting.
- bartekjaszczak/finale-nvim - A balanced dark theme, blending vivid and pastel colors for a comfortable, high-contrast experience. Supports Tree-sitter and semantic highlighting.
Lua Colorscheme
These colorschemes may not specialize in Tree-sitter directly but are written in Lua.
- ellisonleao/gruvbox.nvim (⭐1.9k) - Gruvbox community colorscheme Lua port.
- metalelf0/jellybeans-nvim (⭐108) - A port of jellybeans colorscheme.
- lalitmee/cobalt2.nvim (⭐107) - A port of cobalt2 colorscheme using colorbuddy.
- calind/selenized.nvim (⭐17) - Lua port of Selenized theme with support for Tree-sitter, nvim-cmp, GitSigns and some more.
Colorscheme Creation
- tjdevries/colorbuddy.nvim (⭐666) - A colorscheme helper. Written in Lua! Quick & Easy Color Schemes.
- norcalli/nvim-base16.lua (⭐72) - Programmatic Lua library for setting base16 themes.
- rktjmp/lush.nvim (⭐1.5k) - Define Neovim themes as a DSL in Lua, with real-time feedback.
- roobert/palette.nvim (⭐68) - A beautiful, versatile, systematic, theme system.
- Iron-E/nvim-highlite (⭐239) - A colorscheme generator that is "lite" on logic for the developer.
- echasnovski/mini.nvim#mini.base16 (⭐5.3k) - Module of
mini.nvim
with fast implementation of base16 theme for manually supplied palette. - ThemerCorp/themer.lua (⭐260) - A simple highlighter plugin for Neovim. It has a huge collection of colorschemes. It also has ability to create colorschemes for Vim/Neovim and other supported apps (such as kitty and alacritty).
- echasnovski/mini.nvim#mini.colors (⭐5.3k) - Module of
mini.nvim
to tweak and save any color scheme. Also can animate transition and convert between some color spaces. - echasnovski/mini.nvim#mini.hues (⭐5.3k) - Module of
mini.nvim
to generate configurable color scheme. Takes only background and foreground colors as required arguments. Can adjust number of hues for non-base colors, saturation, accent color, plugin integration. - loganswartz/polychrome.nvim (⭐18) - A colorscheme micro-framework, with support for specifying colors directly in many different formats (sRGB, HSL, Oklab, XYZ and more, with intelligent chroma clipping), live editing preview, and a simple DSL.
Colorscheme Switchers
- 4e554c4c/darkman.nvim (⭐21) - Follow the system dark-mode setting on Linux.
- f-person/auto-dark-mode.nvim (⭐319) - Follow the system appearance on macOS.
- zaldih/themery.nvim (⭐203) - A new way to change the colorscheme on the fly like in vscode.
- linrongbin16/colorbox.nvim (⭐38) - Load all the ultra colorschemes into your Neovim player!
- CWood-sdf/pineapple (⭐52) - Install any colorscheme in your config without leaving your terminal. Collects every colorscheme on the internet and allows you to preview them all before installing.
- BrunoCiccarino/gardenal (⭐4) - Gardenal is a theme switcher, which allows the user to create keyboard shortcuts to switch between themes with one click.
- LmanTW/themify.nvim (⭐24) - A colorscheme manager and switcher. Inspired by Themery.nvim and Lazy.nvim.
Bars and Lines
- Bekaboo/deadcolumn.nvim (⭐301) - Shows your colorcolumn dynamically.
- ecthelionvi/NeoColumn.nvim (⭐95) - Toggleable colorcolumn highlighting specific characters.
- m4xshen/smartcolumn.nvim (⭐300) - Hide your colorcolumn when unneeded.
- utilyre/barbecue.nvim (⭐814) - A VS Code like winbar.
- Bekaboo/dropbar.nvim (⭐1.1k) - IDE-like breadcrumbs, out of the box.
- SmiteshP/nvim-navic (⭐1.4k) - A simple statusline/winbar component that uses LSP to show your current code context.
- luukvbaal/statuscol.nvim (⭐535) - Configurable 'statuscolumn' with builtin segments and click handlers.
Statusline
- NTBBloodbath/galaxyline.nvim (⭐164) - Galaxyline componentizes Vim's statusline by having a provider for each text area. This means you can use the API provided by galaxyline to create the statusline that you want, easily.
- tjdevries/express_line.nvim (⭐301) - Supports co-routines, functions and jobs.
- sontungexpt/sttusline (⭐116) - Very lightweight, super fast and lazyloading statusline.
- nvim-lualine/lualine.nvim (⭐6.2k) - A blazing fast and easy to configure Neovim statusline.
- adelarsq/neoline.vim (⭐248) - A light statusline/tabline plugin using Lua.
- ojroques/nvim-hardline (⭐181) - A statusline / bufferline. It is inspired by vim-airline (⭐18k) but aims to be as light and simple as possible.
- beauwilliams/statusline.lua (⭐205) - A zero-config minimal statusline written in Lua featuring awesome integrations and blazing speed!
- tamton-aquib/staline.nvim (⭐380) - A modern lightweight statusline in Lua. Mainly uses unicode symbols for showing info.
- freddiehaddad/feline.nvim (⭐311) - A minimal, stylish and customizable statusline written in Lua.
- windwp/windline.nvim (⭐464) - The next generation statusline. Animation statusline.
- konapun/vacuumline.nvim (⭐28) - A galaxyline configuration inspired by airline.
- echasnovski/mini.nvim#mini.statusline (⭐5.3k) - Module of
mini.nvim
for minimal and fast statusline. Supports content change depending on window width. - b0o/incline.nvim (⭐806) - Lightweight floating statuslines, intended for use with Neovim's new global statusline.
- rebelot/heirline.nvim (⭐1k) - Heirline.nvim is a no-nonsense Neovim Statusline plugin designed around recursive inheritance to be exceptionally fast and versatile.
- Zeioth/heirline-components.nvim (⭐96) - 30+ Heirline.nvim components you can use out of the box to create your perfect user interface.
- yaocccc/nvim-lines.lua (⭐35) - A fast, light, customizable Neovim statusline and tabline(buffers) plugin.
- MunifTanjim/nougat.nvim (⭐201) - Hyperextensible Statusline / Tabline / Winbar.
- Mr-LLLLL/lualine-ext.nvim (⭐18) - Show more information on lualine.
- mikesmithgh/git-prompt-string-lualine.nvim (⭐22) - Add git-prompt-string to your statusline.
- sschleemilch/slimline.nvim (⭐35) - A slim, minimal and opinionated Lua statusline.
Tabline
- romgrk/barbar.nvim (⭐2.3k) - The Neovim tabline plugin.
- akinsho/bufferline.nvim (⭐3.5k) - A snazzy buffer line built using Lua.
- crispgm/nvim-tabline (⭐76) - Neovim port of tabline.vim with Lua.
- alvarosevilla95/luatab.nvim (⭐190) - A simple tabline written in Lua.
- johann2357/nvim-smartbufs (⭐42) - Smart buffer management.
- willothy/nvim-cokeline (⭐557) - A bufferline for people with addictive personalities.
- tomiis4/BufferTabs.nvim (⭐80) - Simple and Fancy tabline.
- echasnovski/mini.nvim#mini.tabline (⭐5.3k) - Module of
mini.nvim
for minimal tabline showing listed buffers in case of one tab and falling back to default otherwise. - rafcamlet/tabline-framework.nvim (⭐97) - User-friendly framework for building your dream tabline in a few lines of code.
- nanozuki/tabby.nvim (⭐607) - A minimal, configurable, Neovim style tabline. Use your Neovim tabs as workspace multiplexer.
- roobert/bufferline-cycle-windowless.nvim (⭐38) - A bufferline extension to cycle through windowless buffers to give a more traditional tab based experience.
Cursorline
- yamatsum/nvim-cursorline (⭐413) - A plugin that highlights cursor words and lines.
- xiyaowong/nvim-cursorword (⭐133) - Part of nvim-cursorline. Highlight the word under the cursor.
- sontungexpt/stcursorword (⭐75) - Highlight the word under the cursor (Improved and compact version of nvim-cursorline).
- RRethy/vim-illuminate (⭐2.2k) - Highlight the word under the cursor. Neovim's builtin LSP is available, it can be used to highlight more intelligently.
- echasnovski/mini.nvim#mini.cursorword (⭐5.3k) - Module of
mini.nvim
for automatic highlighting of word under cursor (displayed after customizable delay). - mawkler/modicator.nvim (⭐329) - Cursor line number mode indicator. Changes the
CursorLineNr
highlight based on Vim mode. - nyngwang/murmur.lua (⭐114) - Super-fast cursor word highlighting with callbacks(I call them murmurs) included.
Startup
- nvimdev/dashboard-nvim (⭐2.4k) - A minimalist dashboard, inspired by doom-emacs.
- goolord/alpha-nvim (⭐1.9k) - A fast and highly customizable greeter like vim-startify (⭐5.3k)/dashboard-nvim.
- echasnovski/mini.nvim#mini.starter (⭐5.3k) - Module of
mini.nvim
for start screen. Displayed items are fully customizable, item selection can be done using prefix query with instant visual feedback. - henriquehbr/nvim-startup.lua - Displays Neovim startup time.
- max397574/startup.nvim (⭐450) - The fully customizable greeter for Neovim.
- willothy/veil.nvim (⭐150) - A blazingly fast, animated, and infinitely customizable startup / dashboard plugin.
- TobinPalmer/Tip.nvim (⭐73) - Get a simple tip when you launch Neovim.
- CWood-sdf/spaceport.nvim (⭐79) - The start screen that gets you to your projects blazingly fast.
- mong8se/actually.nvim (⭐55) - Load the file you actually meant to load.
- Kurama622/profile.nvim (⭐28) - Your personal homepage.
Icon
- nvim-tree/nvim-web-devicons (⭐2.1k) - A Lua fork of vim-devicons (⭐5.6k).
- echasnovski/mini.nvim#mini.icons (⭐5.3k) - Module of
mini.nvim
meant as a general icon provider. Uses fixed set of highlight groups. Supports various categories, icon and style customizations, caching for performance. Integrates with built-in filetype matching. - yamatsum/nvim-nonicons (⭐332) - Collection of configurations for nvim-web-devicons.
- ziontee113/icon-picker.nvim (⭐316) - Help you pick 𝑨𝕃𝚻 Font Characters, Symbols Σ, Nerd Font Icons & Emojis.
- 2KAbhishek/nerdy.nvim (⭐152) - Find and insert the latest nerd font glyphs.
Media
- edluffy/hologram.nvim (⭐1.3k) - A cross platform terminal image viewer. Works on macOS and Linux.
- HakonHarnes/img-clip.nvim (⭐513) - Effortlessly embed images into any markup language, like LaTeX, Markdown or Typst.
- ekickx/clipboard-image.nvim (⭐314) - Neovim Lua plugin to paste image from clipboard.
- niuiic/cp-image.nvim (⭐8) - Paste image from clipboard and insert the reference code.
- askfiy/nvim-picgo (⭐59) - A picgo-core-based Neovim plugin, written in Lua, that allows you to upload images to the image bed, which means you can view your images from anywhere on the internet.
- madskjeldgaard/reaper-nvim (⭐62) - Remote control Reaper DAW from Neovim.
- davidgranstrom/scnvim (⭐204) - Neovim frontend for SuperCollider.
- andweeb/presence.nvim (⭐836) - Fast and lite Discord Rich Presence plugin written in Lua.
- Chaitanyabsrip/present.nvim (⭐144) - A Presentation plugin written in Lua.
- krady21/compiler-explorer.nvim (⭐145) - Async Lua plugin for interacting with compiler-explorer.
- 3rd/image.nvim (⭐1.1k) - Add image support through Kitty's graphics protocol or ueberzugpp.
- adelarsq/image_preview.nvim (⭐159) - Image preview based on terminal's Image Protocol support.
- niuiic/code-shot.nvim (⭐62) - Take a picture of the code.
- AntonVanAssche/music-controls.nvim (⭐16) - Quickly control your favorite music player (Spotify, VLC, and more).
- neo451/feed.nvim (⭐52) - Web feed reader written in Lua (RSS, atom, json feed).
Note Taking
- 0styx0/abbreinder.nvim (⭐91) - Abbreviation reminders (Neovim >= 0.5).
- jakewvincent/mkdnflow.nvim (⭐693) - Fluent markdown notebook navigation & management (create links, follow links, create and manage to-do lists, reference bib files, and more).
- jbyuki/nabla.nvim (⭐638) - Take your scientific notes.
- nvim-neorg/neorg (⭐6.5k) - Modernity meets insane extensibility. The future of organizing your life.
- nvim-orgmode/orgmode (⭐3.1k) - Orgmode clone written in Lua (Neovim >= 0.5).
- nfrid/due.nvim (⭐115) - Displays due for a date string as a virtual text.
- jbyuki/venn.nvim (⭐977) - Draw ASCII diagrams.
- nvim-telekasten/telekasten.nvim (⭐1.4k) - Work with a text-based, markdown zettelkasten / wiki and mix it with a journal, based on telescope.nvim.
- zk-org/zk-nvim (⭐533) - Neovim extension for zk, a plain text note-taking assistant.
- chrsm/impulse.nvim (⭐95) - Read Notion.so notes.
- epwalsh/obsidian.nvim (⭐4.2k) - Plugin for Obsidian, written in Lua.
- IlyasYOY/obs.nvim (⭐73) - Your Obsidian notes at the speed of thought.
- jghauser/papis.nvim (⭐153) - Manage your bibliography from within your favourite editor.
- Ostralyan/scribe.nvim (⭐25) - Take notes, easily.
- RutaTang/quicknote.nvim (⭐127) - Quickly take notes, in-place.
- serenevoid/kiwi.nvim (⭐185) - A stripped down VimWiki with necessary features.
- ada0l/obsidian/ (⭐37) - Base Obsidian functionality.
- gsuuon/note.nvim (⭐66) - Daily tasks with deep-linking and project spaces.
- backdround/global-note.nvim (⭐121) - One global note in a floating window.
- 2KAbhishek/tdo.nvim (⭐54) - Fast and simple note taking.
- slugbyte/whip.nvim (⭐6) - A super fast minimal scratchpad management plugin, biew biew biew.
Utility
- gaborvecsei/usage-tracker.nvim (⭐100) - Track your Neovim usage and visualize statistics easily.
- mateuszwieloch/automkdir.nvim (⭐16) - Automatically create non-existent parent directories when writing a file.
- jghauser/mkdir.nvim (⭐214) - Automatically create missing directories when saving files.
- matbme/JABS.nvim (⭐282) - Pretty and minimal buffer switcher window.
- j-morano/buffer_manager.nvim (⭐237) - Add one or more buffers, reorder them, save them inside a file or just delete them very easily from a small floating window.
- clojure-vim/jazz.nvim (⭐38) - Acid + Impromptu = Jazz.
- doctorfree/cheatsheet.nvim (⭐47) - Searchable cheatsheet.
- code-biscuits/nvim-biscuits (⭐248) - A Neovim port of Assorted Biscuits. Ends up with more supported languages too.
- kazhala/close-buffers.nvim (⭐161) - Delete multiple Vim buffers based on different conditions.
- rktjmp/paperplanes.nvim (⭐91) - Post selections or buffers to online paste bins.
- rcarriga/nvim-notify (⭐3.1k) - A fancy, configurable, notification manager.
- echasnovski/mini.nvim#mini.notify (⭐5.3k) - Module of
mini.nvim
to show one or more highlighted notifications in a single window. Provides maker ofvim.notify()
implementation and sets up automated LSP progress updates. - folke/noice.nvim (⭐4.5k) - Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu.
- sQVe/bufignore.nvim (⭐17) - Unlist hidden buffers matching specified ignore sources.
- saifulapm/commasemi.nvim (⭐5) - Toggle comma and semicolon.
- stevearc/dressing.nvim (⭐1.9k) - Improve the built-in
vim.ui
interfaces with telescope, fzf, etc. - gaborvecsei/cryptoprice.nvim (⭐22) - Check the price of the defined cryptocurrencies.
- jghauser/fold-cycle.nvim (⭐84) - Cycle folds open or closed.
- rgroli/other.nvim (⭐391) - Open alternative files for the current buffer.
- toppair/reach.nvim (⭐240) - Buffer, mark, tabpage switcher.
- axieax/urlview.nvim (⭐235) - Browse all URLs in the current buffer.
- nkakouros-original/numbers.nvim (⭐34) - Toggle relativenumber whenever it makes sense.
- ghillb/cybu.nvim (⭐308) - Displays a notification window with context when cycling buffers.
- sontungexpt/url-open (⭐86) - Open URLs under the cursor and create highlight effects for them.
- crusj/bookmarks.nvim (⭐227) - Remember file locations and sort by time and frequency.
- xiyaowong/virtcolumn.nvim (⭐85) - Display a line as colorcolumn.
- m-demare/attempt.nvim (⭐86) - Manage and run temporary buffers.
- kevinhwang91/nvim-ufo (⭐2.4k) - Ultra fold with modern looking and performance boosting.
- xiyaowong/link-visitor.nvim (⭐47) - Let me help you open the links.
- sitiom/nvim-numbertoggle (⭐158) - Neovim plugin to automatically toggle between relative and absolute line numbers.
- anuvyklack/fold-preview (⭐133) - Preview closed fold without opening it.
- nguyenvukhang/nvim-toggler (⭐157) - Invert text, such as toggling between
true
andfalse
. - CosmicNvim/cosmic-ui (⭐162) - Cosmic-UI is a simple wrapper around specific Vim functionality. Built in order to provide a quick and easy way to create a Cosmic UI experience with Neovim!
- AckslD/messages.nvim (⭐89) - Capture and show any messages in a customisable (floating) buffer.
- jbyuki/instant.nvim (⭐1.3k) - A collaborative editing plugin written in Lua with no dependencies.
- numToStr/BufOnly.nvim (⭐36) - Lua/Neovim port of BufOnly.vim with some changes.
- zbirenbaum/neodim (⭐312) - Dimming the highlights of unused functions, variables, parameters, and more.
- bfredl/nvim-miniyank (⭐232) - The killring-alike plugin with no default mappings.
- chrisgrieser/nvim-genghis (⭐202) - Convenience file operations, written in Lua.
- chrisgrieser/nvim-recorder (⭐237) - Simplifying and improving how you interact with macros.
- echasnovski/mini.nvim#mini.animate (⭐5.3k) - Module of
mini.nvim
to add out of the box animations for common built-in actions (cursor movement, scroll, resize, window open/close). - figsoda/nix-develop.nvim (⭐56) - Run
nix develop
without restarting Neovim. - yaocccc/nvim-foldsign (⭐35) - Display folds on sign column.
- tenxsoydev/nx.nvim (⭐31) - Neovim API utility wrapper for more convenience with Lua keymaps, highlights, autocommands and options.
- zdcthomas/yop.nvim (⭐74) - Easily create your own operators (like
d
andy
). - cpea2506/relative-toggle.nvim (⭐31) - Toggles smoothly between number and relative numbers, supporting various number combinations, highly customizable.
- nvim-early-retirement (⭐184) - Send buffers into early retirement by automatically closing them after x minutes of inactivity.
- hbac.nvim (⭐203) - Automatically close buffers you are not working on.
- ragnarok22/whereami.nvim (⭐15) - Test your VPN by getting you current location.
- ecthelionvi/NeoComposer.nvim (⭐402) - Simplify macro management, enhance productivity, and create harmonious workflows.
- LukasPietzschmann/telescope-tabs (⭐251) - Quickly navigate between tabs using telescope.
- RutaTang/compter.nvim (⭐25) - Power and extend the ability of
<C-a>
and<C-x>
with customized patterns. - yagiziskirik/AirSupport.nvim (⭐9) - Searchable reminder window for your custom shortcuts and commands.
- aPeoplesCalendar/apc.nvim (⭐22) - "On this day" style calendar, which provides information about worldwide history of working class movements and liberation struggles.
- subnut/nvim-ghost.nvim (⭐164) - GhostText support with zero dependencies.
- malbertzard/inline-fold.nvim (⭐83) - Hide certain elements inline like long CSS classes or
href
content. - chrisgrieser/nvim-origami (⭐192) - Fold with relentless elegance.
- GCBallesteros/NotebookNavigator.nvim (⭐199) - Navigate and execute code cells.
- LintaoAmons/scratch.nvim (⭐246) - Create and manage scratch files.
- JMarkin/gentags.lua (⭐13) - Auto generate tag files by ctags.
- yutkat/confirm-quit.nvim (⭐23) - Confirm before quitting Neovim.
- bgaillard/readonly.nvim (⭐14) - Secure edition of files containing sensible / secret information, passwords, API keys, SSH keys, etc.
- GCBallesteros/jupytext.nvim (⭐85) - Edit jupyter notebooks without leaving Neovim.
- ariel-frischer/bmessages.nvim (⭐43) - Replace the default :messages window with a configurable, auto-updating buffer.
- backdround/tabscope.nvim (⭐49) - Make tab-local buffers.
- linrongbin16/gentags.nvim (⭐15) - The tags generator/management for old school vimers.
- Mr-LLLLL/utilities.nvim (⭐10) - A repository to collect some little utility functions.
- mcauley-penney/visual-whitespace.nvim (⭐90) - See whitespace characters in Visual selections, like VSCode.
- Zeioth/distroupdate.nvim (⭐10) - Distro agnostic updater to get the latest changes from the Git repository of your config.
- SUSTech-data/neopyter (⭐87) - The bridge between Neovim and jupyter lab, edit in Neovim and preview/run in jupyter lab.
- terje/simctl.nvim (⭐29) - Interact with iOS Simulators.
- pluffie/md-babel.nvim - Run code chunks from Markdown files, like org-babel.
- mistricky/codesnap.nvim (⭐634) - Snapshot plugin with rich features that can make pretty code snapshots.
- AlejandroSuero/freeze-code.nvim (⭐20) - Code screenshot plugin that makes use of freeze (⭐3.4k) inside the editor, it lets you copy the generated image to paste it anywhere.
- ysmb-wtsg/in-and-out.nvim (⭐51) - Quick navigation in and out of surrounding characters.
- ChuufMaster/buffer-vacuum (⭐10) - Set a maximum number of buffers to keep open and intelligently delete the oldest buffers over the maximum.
- mong8se/buffish.nvim (⭐4) - A buffer switcher in the spirit of dirvish or vinegar.
- niuiic/todo.nvim (⭐13) - Simple but powerful todo manager based on text.
- QuentinGruber/timespent.nvim (⭐18) - Display time spent on projects / files.
- SunnyTamang/pendulum.nvim (⭐10) - Simple timer for creating time based productive sessions for coders, competitive programmers, developers etc.
- ptdewey/pendulum-nvim (⭐64) - Track time spent coding and glean insights through on-demand time reports.
- QuentinGruber/pomodoro.nvim (⭐32) - Use the Pomodoro Technique with built-in session tracking and break reminders.
- rlychrisg/truncateline.nvim (⭐17) - Truncate long lines to keep track of where you are when the start gets lost off the left side of the screen.
- EL-MASTOR/bufferlist.nvim (⭐40) - A super fast, lightweight, minimal and super easy buffer manager.
- ellisonleao/dotenv.nvim (⭐41) - Minimalist .env support.
- dzfrias/arena.nvim (⭐64) - A smart (frecency-based) buffer switcher.
CSV Files
- VidocqH/data-viewer.nvim (⭐96) - Provide a simple table view to inspect data files such as
csv
,tsv
. - theKnightsOfRohan/csvlens.nvim (⭐31) - A port of YS-L/csvlens (⭐2.6k), for easy previewing of tabular data.
- emmanueltouzery/decisive.nvim (⭐90) - View and edit CSV files with ease and speed.
- hat0uma/csvview.nvim (⭐37) - An asynchronous CSV/TSV table viewer with real-time updates, configurable comments and delimiters, and multiple display modes.
Terminal Integration
- LoricAndre/OneTerm.nvim (⭐56) - Plugin framework for running commands in the terminal.
- nikvdp/neomux (⭐354) - Control Neovim from shells running inside Neovim.
- willothy/flatten.nvim (⭐503) - Open files from terminal buffers in your current Neovim instance instead of launching a nested instance.
- willothy/wezterm.nvim (⭐199) - Functions for interacting with Wezterm.
- akinsho/toggleterm.nvim (⭐4.4k) - Easily manage multiple terminal windows.
- norcalli/nvim-terminal.lua (⭐208) - A high performance filetype mode which leverages conceal and highlights your buffer with the correct color codes.
- numToStr/FTerm.nvim (⭐748) - No nonsense floating terminal written in Lua.
- pianocomposer321/consolation.nvim (⭐34) - A general-purpose terminal wrapper and management plugin, written in Lua.
- jghauser/kitty-runner.nvim (⭐101) - Poor man's REPL. Easily send buffer lines and commands to a kitty terminal.
- jlesquembre/nterm.nvim (⭐57) - Interact with the terminal, with notifications.
- s1n7ax/nvim-terminal (⭐117) - A simple & easy to use multi-terminal plugin.
- m00qek/baleia.nvim (⭐138) - Colorize text with ANSI escape sequences (8, 16, 256 or TrueColor).
- samjwill/nvim-unception (⭐223) - Automatic unnesting of Neovim sessions started from terminal buffers.
- kassio/neoterm (⭐1.3k) - Wrapper of some
:terminal
functions. - nyngwang/NeoTerm.lua (⭐69) - Attach a terminal for each buffer, now with stable toggle and astonishing cursor restoring.
- idanarye/nvim-channelot (⭐6) - Operate Neovim jobs from Lua coroutines.
- chomosuke/term-edit.nvim (⭐188) - Allowing you to edit your command in the terminal just like any other buffer.
- mikesmithgh/kitty-scrollback.nvim (⭐478) - Open your Kitty scrollback buffer. Ameowzing.
- niuiic/terminal.nvim (⭐22) - Manage terminal as buffer, multiple terminals support.
- NeViRAIDE/nekifoch.nvim (⭐16) - Managing Kitty terminal font settings.
- 2KAbhishek/termim.nvim (⭐70) - Neovim Terminal, Improved.
- samharju/yeet.nvim (⭐96) - Run shell commands in terminal buffers or tmux panes.
Debugging
- mfussenegger/nvim-dap (⭐5.6k) - Debug Adapter Protocol client implementation.
- sakhnik/nvim-gdb (⭐722) - Thin wrapper for GDB, LLDB, PDB/PDB++ and BashDB.
- rcarriga/nvim-dap-ui (⭐2.7k) - A UI for nvim-dap.
- pocco81/dap-buddy.nvim (⭐401) - Manage several debuggers for nvim-dap.
- Weissle/persistent-breakpoints.nvim (⭐193) - Persistent breakpoints for nvim-dap.
- ofirgall/goto-breakpoints.nvim (⭐30) - Cycle between breakpoints for nvim-dap.
- andrewferrier/debugprint.nvim (⭐338) - Debugging the print() way.
- t-troebst/perfanno.nvim (⭐207) - Annotate your code with callgraph profiling data. Native support for perf, flamegraph and the LuaJit profiler.
- niuiic/dap-utils (⭐36) - Utilities to provide a better experience for using nvim-dap.
- theHamsta/nvim-dap-virtual-text (⭐873) - Virtual text support for nvim-dap.
- chrisgrieser/nvim-chainsaw (⭐100) - Speed up log creation. Creates various kinds of language-specific log statements, like logs of variables, assertions, or time-measuring.
- Willem-J-an/visidata.nvim (⭐24) - Render pandas dataframes in nvim-dap using the power of visidata.
Quickfix
- kevinhwang91/nvim-bqf (⭐1.7k) - The goal of nvim-bqf is to make Neovim's quickfix window better.
- yorickpeterse/nvim-pqf (⭐139) - Prettier quickfix/location list windows.
- nyngwang/NeoWell.lua (⭐14) - Sometimes you will want to fix some lines later. Store lines into qf with some note so you know what to do when you really want to fix it.
- ashfinal/qfview.nvim (⭐54) - Pretty quickfix/location view with consistent path-shorten and folding.
- niuiic/quickfix.nvim (⭐12) - Extended functionality for quickfix, including store, restore, make, remove, etc.
- stevearc/quicker.nvim (⭐345) - Improved quickfix UI and editable quickfix buffer.
Deployment
- coffebar/transfer.nvim (⭐72) - Sync and diff with remote server using rsync and OpenSSH.
- OscarCreator/rsync.nvim (⭐83) - Automatically sync up/down project to a remote with rsync.
- sachinsenal0x64/hot.nvim (⭐28) - A hot reloader that works with any programming language.
Test
- David-Kunz/jester (⭐201) - Easily run and debug Jest tests.
- klen/nvim-test (⭐183) - A Neovim wrapper for running tests.
- nvim-neotest/neotest (⭐2.4k) - An extensible framework for interacting with tests within Neovim.
- andythigpen/nvim-coverage (⭐332) - Displays coverage information in the sign column.
- quolpr/quicktest.nvim (⭐80) - Run your tests in split window or popup with live feedback.
Code Runner
- michaelb/sniprun (⭐1.5k) - Run parts of code of any language directly from Neovim.
- CRAG666/code_runner.nvim (⭐538) - The best code runner you could have, with super powers.
- is0n/jaq-nvim (⭐177) - Just Another Quickrun Plugin in Lua.
- jedrzejboczar/toggletasks.nvim (⭐156) - Task runner with JSON/YAML configs, using toggleterm.nvim and telescope.nvim.
- EthanJWright/vs-tasks.nvim (⭐183) - Telescope picker for VSCode style tasks.
- stevearc/overseer.nvim (⭐1.2k) - A task runner and job management plugin.
- smzm/hydrovim (⭐79) - Run Python code inside Neovim.
- desdic/greyjoy.nvim (⭐28) - A modular task runner for Makefiles, vscode tasks, kitchen etc.
- Shatur/neovim-tasks (⭐109) - A stateful task manager focused on integration with build systems.
- milanglacier/yarepl.nvim (⭐103) - Yet Another REPL, flexible, supporting multiple paradigms to interact with REPLs, and native dot repeat without other dependencies.
- Vigemus/iron.nvim (⭐1k) - Interactive REPLs of over 30 languages embedded.
- Civitasv/cmake-tools.nvim (⭐379) - CMake integration.
- idanarye/nvim-moonicipal (⭐16) - Task runner with focus on rapidly changing personal tasks.
- MarcHamamji/runner.nvim (⭐49) - A customizable Lua code runner.
- google/executor.nvim (⭐150) - Allows you to run command line tasks in the background and be notified of results.
- Zeioth/compiler.nvim (⭐519) - Compiler for building and running your code without having to configure anything.
- Zeioth/makeit.nvim (⭐36) - Makefile runner based on overseer.
- jaytyrrell13/static.nvim (⭐11) - Run static site generator commands.
- dasupradyumna/launch.nvim (⭐49) - A simple and quick task launcher which allows dynamically configuring tasks on the fly, with optional support for debugging.
- benlubas/molten-nvim (⭐607) - Enables running code chunks via the jupyter kernel. Output (including image output) is rendered in a floating window below the code.
- bfredl/nvim-ipy (⭐423) - Make interfacing with IPython/Jupyter easier.
- pianocomposer321/officer.nvim (⭐20) - Like dispatch.vim but using overseer.nvim.
- speelbarrow/spLauncher.nvim (⭐7) - For launching tasks, I guess.
- al1-ce/just.nvim (⭐32) - Task runner for justfiles.
- niuiic/task.nvim (⭐9) - Another highly configurable task manager that enables seamless interaction with tasks.
- chrisgrieser/nvim-justice (⭐7) - Lightweight integration of the
just
task runner.
Neovim Lua Development
- folke/lazydev.nvim (⭐721) - Faster LuaLS setup.
- nvim-neorocks/luarocks-tag-release (⭐48) - A GitHub action that publishes your Neovim plugins to LuaRocks.
- svermeulen/vimpeccable (⭐353) - Commands to help write your .vimrc in Lua or any Lua based language.
- rafcamlet/nvim-luapad (⭐563) - Interactive real time Neovim scratchpad for embedded Lua engine - Type and watch!.
- nvim-lua/plenary.nvim (⭐2.8k) - Plenary: full; complete; entire; absolute; unqualified. All the Lua functions I don't want to write twice.
- nvim-lua/popup.nvim (⭐364) - An implementation of the Popup API from Vim.
- tjdevries/vlog.nvim (⭐129) - Single file, no dependency, easy copy & paste log file to add to your Neovim Lua plugins.
- bfredl/nvim-luadev (⭐278) - REPL/debug console Lua plugins. The
:Luadev
command will open an scratch window which will show output from executing Lua code. - jbyuki/one-small-step-for-vimkind (⭐406) - An adapter for the Neovim Lua language. It allows you to debug any Lua code running in a Neovim instance (A Lua plugin that can debug Neovim Lua plugins).
- kkharji/sqlite.lua (⭐492) - SQLite/LuaJIT binding for Lua and Neovim.
- MunifTanjim/nui.nvim (⭐1.7k) - UI Component Library.
- echasnovski/mini.nvim#mini.doc (⭐5.3k) - Module of
mini.nvim
for generation of help files from EmmyLua-like annotations. Allows flexible customization of output via hook functions. - milisims/nvim-luaref (⭐121) - A reference for builtin Lua functions.
- echasnovski/mini.nvim#mini.test (⭐5.3k) - Module of
mini.nvim
with framework for writing extensive Neovim plugin tests. Supports hierarchical tests, hooks, parametrization, filtering, screen tests, "busted-style" emulation, customizable reporters, and more. - miversen33/import.nvim (⭐172) - A safe require replacement with niceties.
- ray-x/guihua.lua (⭐169) - A Lua UI library. Includes a fzy search bar, list view and tree view modules.
- anuvyklack/animation.nvim (⭐44) - Create animations.
- nfrid/treesitter-utils (⭐8) - Some useful Tree-sitter methods.
- nvim-lusc (⭐13) - Adds support for Structured Async/Concurrency in Lua.
- CWood-sdf/banana.nvim (⭐144) - HTML renderer for plugin UIs.
- OXY2DEV/helpview.nvim (⭐207) - Decorations for
vimdoc/help
files. - niuiic/omega.nvim (⭐3) - Missing functions for Lua plugin development.
- 2KAbhishek/utils.nvim (⭐7) - Powerful utilities to speed up plugin development.
- YaroSpace/lua-console.nvim (⭐13) - A handy scratch pad / REPL / debug console for Lua development and Neovim exploration and configuration.
Fennel
- Olical/aniseed (⭐610) - Configure and extend Neovim with Fennel (Lisp to Lua).
- Olical/nfnl (⭐232) - Streamlined successor to Aniseed, compiling Fennel to Lua on file write.
- Olical/conjure (⭐1.8k) - Interactive evaluation (Clojure, Fennel, Janet, Racket, Hy, MIT Scheme, Guile).
- rktjmp/hotpot.nvim (⭐360) - Seamless, transparent Fennel inside Neovim.
- udayvir-singh/tangerine.nvim (⭐209) - Tangerine provides a painless way to add fennel to your config.
- udayvir-singh/hibiscus.nvim (⭐107) - Highly opinionated macros to elegantly write your config.
Dependency Management
- vuki656/package-info.nvim (⭐487) - Display latest package version as virtual text in package.json.
- Saecki/crates.nvim (⭐868) - Rust dependency management for
Cargo.toml
. - piersolenski/telescope-import.nvim (⭐189) - Import modules faster based on what you've already imported in your project.
Git
- f-person/git-blame.nvim (⭐908) - Show Git blame info.
- lewis6991/gitsigns.nvim (⭐5.1k) - Git integration: signs, hunk actions, blame, etc.
- echasnovski/mini.nvim#mini.diff (⭐5.3k) - Module of
mini.nvim
to interactively visualize difference between buffer text and its reference. Provides toggleable detailed overview in text area, built-in apply/reset/textobject/goto mappings, and more. - echasnovski/mini.nvim#mini.git (⭐5.3k) - Module of
mini.nvim
for enhanced Git integration with current Neovim process. Implements tracking of Git related data,:Git
user command, and various helpers to explore Git history. - NeogitOrg/neogit (⭐4.1k) - A Magit clone that may change some things to fit the Vim philosophy.
- tveskag/nvim-blame-line (⭐183) - A small plugin that uses Neovim's virtual text to print Git blame info at the end of the current line.
- ruifm/gitlinker.nvim (⭐535) - Generate shareable file permalinks for several Git hosts. Inspired by tpope/vim-fugitive's :GBrowse.
- linrongbin16/gitlinker.nvim (⭐164) - Maintained fork of "ruifm's gitlinker", refactored with bug fixes, ssh aliases, blame support and other improvements.
- tanvirtin/vgit.nvim (⭐592) - Visual Git Plugin to enhance your Git experience.
- sindrets/diffview.nvim (⭐4k) - Single tabpage interface for easily cycling through diffs for all modified files for any Git rev.
- kdheepak/lazygit.nvim (⭐1.5k) - Plugin for calling lazygit.
- AckslD/nvim-gfold.lua (⭐32) - Plugin using gfold (⭐308) to switch repo and have statusline component.
- akinsho/git-conflict.nvim (⭐1k) - A plugin to visualise and resolve merge conflicts.
- aaronhallaert/advanced-git-search.nvim (⭐340) - Search your Git history by commit content, message and author with Telescope.
- 9seconds/repolink.nvim (⭐23) - Generate shareable HTTP permalinks for various Git web frontends.
- chrisgrieser/nvim-tinygit (⭐170) - Lightweight and nimble Git client.
- niuiic/git-log.nvim (⭐15) - Check Git log of the selected code.
- 2KAbhishek/co-author.nvim (⭐23) - Quickly add co-authors to commits.
- isak102/telescope-git-file-history.nvim (⭐73) - Open/preview contents of the current file at a specific commit, without using git checkout.
- moyiz/git-dev.nvim (⭐88) - Open remote Git repositories in the comfort of Neovim.
- SuperBo/fugit2.nvim (⭐400) - Git GUI powered by libgit2.
GitHub
- pwntester/octo.nvim (⭐2.4k) - Work with GitHub issues and PRs from Neovim. Just edit the issue description.
- pwntester/codeql.nvim (⭐97) - Neovim plugin to help writing and testing CodeQL queries.
- ldelossa/gh.nvim (⭐550) - A fully featured GitHub integration for performing code reviews.
- topaxi/gh-actions.nvim (⭐120) - View and dispatch GitHub Actions workflow runs.
- rawnly/gist.nvim (⭐181) - Create a GitHub Gist from the current file (powered by gh).
- 2KAbhishek/octohub.nvim (⭐62) - Access all your gihub repos, stats and more in simple keystrokes.
Motion
- tris203/precognition.nvim (⭐889) - Precognition uses virtual text and gutter signs to show available motions.
- smoka7/hop.nvim (⭐498) - Hop is an EasyMotion-like plugin allowing you to jump anywhere in a document with as few keystrokes as possible.
- ggandor/lightspeed.nvim (⭐1.6k) - A Sneak-like plugin offering unparalleled navigation speed via ahead-of-time displayed labels, that eliminate the pause between entering the search pattern and selecting the target.
- ggandor/leap.nvim (⭐4.4k) - A refined successor of Lightspeed, aiming to establish a widely accepted standard interface extension for moving around in Vim-like editors.
- ggandor/flit.nvim (⭐367) - Enhanced f/t motions for Leap.
- ggandor/leap-spooky.nvim (⭐277) - Spooky (Leap) actions at a distance.
- rasulomaroff/telepath.nvim (⭐58) - Another Leap extension for performing remote actions with a different approach.
- folke/flash.nvim (⭐2.6k) - Navigate your code with search labels, enhanced character motions and Tree-sitter integration.
- echasnovski/mini.nvim#mini.jump (⭐5.3k) - Module of
mini.nvim
for smarter jumping to a single character. - echasnovski/mini.nvim#mini.jump2d (⭐5.3k) - Module of
mini.nvim
for smarter jumping within visible lines via iterative label filtering. Supports custom jump targets (spots), labels, hooks, allowed windows and lines, and more. - rlane/pounce.nvim (⭐341) - An EasyMotion-like plugin for quick cursor movement using fuzzy search.
- xiaoshihou514/squirrel.nvim (⭐16) - Quickly jump between Tree-sitter nodes.
- gen740/SmoothCursor.nvim (⭐374) - Add fancy sub-cursor to signcolumn to show your scroll or jump direction.
- edluffy/specs.nvim (⭐474) - A fast and lightweight Neovim Lua plugin to keep an eye on where your cursor has jumped.
- abecodes/tabout.nvim (⭐755) - Jump out of brackets, quotes, objects, etc.
- roobert/tabtree.nvim (⭐39) - Jump between significant code elements, such as brackets, quotes, etc.
- woosaaahh/sj.nvim (⭐127) - Search based navigation combined with quick jump features.
- Weissle/easy-action (⭐40) - Easily perform an action on where you can see.
- cbochs/portal.nvim (⭐347) - Build upon and enhance existing jumplist motions (i.e.
<c-i>
and<c-o>
). - echasnovski/mini.nvim#mini.bracketed (⭐5.3k) - Module of
mini.nvim
to go forward/backward with square brackets. - liangxianzhe/nap.nvim (⭐100) - Jump between next/previous buffer, tab, diagnostic, etc, with a single key.
- chrisgrieser/nvim-spider (⭐662) - Use the w, e, b motions like a spider. Considers camelCase and skips insignificant punctuation.
- gsuuon/tshjkl.nvim (⭐107) - Toggle to navigate and select Tree-sitter nodes with hjkl.
- backdround/neowords.nvim (⭐57) - Hops by any type of words. It gives fine control over
w
,e
,b
,ge
movements. - backdround/improved-ft.nvim (⭐40) - Improve default
f
/t
abilities. - Mr-LLLLL/treesitter-outer (⭐6) - Jump to outer node with smart.
Tree-sitter Based
- mfussenegger/nvim-treehopper (⭐435) - Region selection with hints on the AST nodes of a document powered by Tree-sitter.
- ziontee113/syntax-tree-surfer (⭐472) - Navigate and swap Tree-sitter's AST Nodes. Step into, step out, step over, step back.
- drybalka/tree-climber.nvim (⭐143) - Easy navigation around the Tree-sitter's tree that works in multi-language files and in normal mode.
- atusy/treemonkey.nvim (⭐24) - Region selection with Tree-sitter nodes.
Keybinding
- folke/which-key.nvim (⭐5.4k) - Neovim plugin that shows a popup with possible keybindings of the command you started typing.
- echasnovski/mini.nvim#mini.clue (⭐5.3k) - Module of
mini.nvim
to show next key clues. Has opt-in triggers, shows next key information after customizable delay, allows hydra-like submodes, and more. - mrjones2014/legendary.nvim (⭐1.1k) - Define your keymaps, commands, and autocommands as simple Lua tables, and create a legend for them at the same time (like VS Code's Command Palette), integrates with
which-key.nvim
. - Iron-E/nvim-cartographer (⭐55) - a more convenient
:map
ping syntax for Lua environments. - LionC/nest.nvim (⭐232) - Lua utility to map keys concisely using cascading trees. Also allows binding Lua functions to keys.
- slugbyte/unruly-worker.nvim (⭐36) - A ridiculously fun alternative keymap for the workman keyboard layout, with lots of powerful features for working with yank, marks, macros, LSP, and more. Built and configured with Lua.
- FeiyouG/commander.nvim (⭐384) - Create and manage keybindings and commands in a more organized manner and search them quickly through Telescope.
- nvimtools/hydra.nvim (⭐149) - Create custom submodes and menus. Port of Emacs Hydra. Maintained fork of anuvyklack/hydra.nvim.
- anuvyklack/keymap-amend.nvim (⭐65) - Amend the existing keymap.
- max397574/better-escape.nvim (⭐643) - Create shortcuts to escape insert mode without getting delay.
- Nexmean/caskey.nvim (⭐68) - Utility to keymappings configuration using declarative cascading trees, optionally integrates with
which-key
. - Wansmer/langmapper.nvim (⭐148) - Auto translating your mappings for non-English input methods.
- tris203/hawtkeys.nvim (⭐221) - Suggest new easy-to-hit keymaps and find issues with your current keymap configurations.
- mawkler/demicolon.nvim (⭐76) - Use
;
and,
keys to also repeat jumps to diagnostics (e.g.]d
) and to nvim-treesitter-textobjects (⭐2.2k) (e.g.]f
), in addition to repeatingt
/T
/f
/F
. - debugloop/layers.nvim (⭐41) - Craft temporary keymap overlays and layered modes with ease.
Mouse
- notomo/gesture.nvim (⭐528) - Mouse gesture plugin.
Scrolling
- karb94/neoscroll.nvim (⭐1.5k) - Smooth scrolling.
- declancm/cinnamon.nvim (⭐363) - Smooth scrolling for any movement command.
- nkakouros-original/scrollofffraction.nvim (⭐12) - Scrolloff as a fraction of the window height.
- niuiic/scroll.nvim (⭐17) - Smooth scrolling, custom smooth strategy.
- rlychrisg/keepcursor.nvim (⭐7) - A collection of functions to control how the screen is positioned around the cursor.
Scrollbar
- Xuyuanp/scrollbar.nvim (⭐270) - Scrollbar.
- dstein64/nvim-scrollview (⭐562) - Display interactive scrollbars.
- petertriho/nvim-scrollbar (⭐878) - Extensible scrollbar that shows diagnostics and search results.
- echasnovski/mini.nvim#mini.map (⭐5.3k) - Module of
mini.nvim
to show floating window with buffer text overview, scrollbar, and highlights. - gorbit99/codewindow.nvim (⭐442) - Minimap plugin, that is closely integrated with Tree-sitter and the builtin LSP to display more information to the user.
- lewis6991/satellite.nvim (⭐555) - Decorate scrollbar.
Editing Support
- csessh/stopinsert.nvim (⭐13) - Automatically exit Insert mode after inactivity.
- windwp/nvim-ts-autotag (⭐1.7k) - Use Tree-sitter to autoclose and autorename XML, HTML, JSX tag.
- windwp/nvim-autopairs (⭐3.3k) - A minimalist autopairs written by Lua.
- ZhiyuanLck/smart-pairs (⭐137) - Ultimate smart pairs written by Lua.
- echasnovski/mini.nvim#mini.pairs (⭐5.3k) - Module of
mini.nvim
for autopairs which has minimal defaults and functionality to do per-key mapping. - m4xshen/autoclose.nvim (⭐523) - A minimalist autoclose plugin written in Lua.
- altermo/ultimate-autopair.nvim (⭐501) - Autopair with extensions.
- utilyre/sentiment.nvim (⭐151) - Enhanced matchparen.
- monaqa/dial.nvim (⭐808) - Extended increment/decrement.
- HiPhish/rainbow-delimiters.nvim (⭐560) - Rainbow delimiters with Tree-sitter.
- AckslD/nvim-trevJ.lua (⭐170) - Does the opposite of join-line (J) for arguments, powered by Tree-sitter.
- pocco81/true-zen.nvim (⭐985) - Clean and elegant distraction-free writing.
- pocco81/high-str.nvim (⭐307) - Highlight visual selections like in a normal document editor!
- pocco81/auto-save.nvim (⭐669) - Save your work before the world collapses or you type :qa!
- okuuva/auto-save.nvim (⭐172) - Automatically saves your work as often as needed and as seldom as possible. Customizable with smart defaults. Maintained fork of Pocco81/auto-save.nvim.
- tmillr/sos.nvim (⭐19) - Automatically save all your modified buffers according to a predefined timeout value.
- folke/zen-mode.nvim (⭐1.7k) - Distraction-free coding.
- andersevenrud/nvim_context_vt (⭐376) - Shows virtual text of the current context.
- nvim-treesitter/nvim-treesitter-context (⭐2.5k) - Shows floating hover with the current function/block context.
- mizlan/iswap.nvim (⭐508) - Interactively select and swap function arguments, list elements, and more. Powered by Tree-sitter.
- Wansmer/sibling-swap.nvim (⭐162) - Different way to swapping arguments and other siblings with Tree-sitter.
- Wansmer/binary-swap.nvim (⭐17) - Swapping operands and operators in binary expressions: comparison and mathematical operations.
- nacro90/numb.nvim (⭐644) - Peek lines in a non-obtrusive way.
- Allendang/nvim-expand-expr (⭐35) - Expand and repeat expression to multiple lines.
- h-hg/fcitx.nvim (⭐86) - Switching and restoring fcitx state for each buffer separately.
- keaising/im-select.nvim (⭐185) - Switching and restoring input method automatically depends on Neovim's edit mode.
- echasnovski/mini.nvim#mini.trailspace (⭐5.3k) - Module of
mini.nvim
for automatic highlighting of trailing whitespace with functionality to remove it. - smjonas/live-command.nvim (⭐508) - Text editing with immediate visual feedback: preview commands such as
:norm
,:g
, macros and more. - filipdutescu/renamer.nvim (⭐303) - VS Code-like renaming UI, written in Lua.
- gbprod/cutlass.nvim (⭐197) - Plugin that adds a 'cut' operation separate from 'delete'.
- gbprod/substitute.nvim (⭐581) - Neovim plugin introducing a new operator motions to quickly replace and exchange text.
- gregorias/coerce.nvim (⭐117) - Change keyword case.
- johmsalas/text-case.nvim (⭐455) - Text case changes via keybindings and custom substitute command with Telescope and LSP support.
- echasnovski/mini.nvim#mini.operators (⭐5.3k) - Module of
mini.nvim
with various text edit operators: replace, exchange, multiply, sort, evaluate. - gbprod/yanky.nvim (⭐912) - Improved Yank and Put functionalities.
- sQVe/sort.nvim (⭐137) - Sorting plugin that intelligently supports line-wise and delimiter sorting.
- booperlv/nvim-gomove (⭐199) - A complete plugin for moving and duplicating blocks and lines, with complete fold handling, reindenting, and undoing in one go.
- hinell/duplicate.nvim (⭐20) - Duplicate lines & blocks of lines easily; undo & unfolding support; full OOP.
- hinell/move.nvim (⭐9) - Move chunks of text around; fork of fedepujol/move.nvim (⭐347).
- willothy/moveline.nvim (⭐139) - Move lines and blocks up and down easily, with indenting handled automatically as you move. Written in Rust.
- echasnovski/mini.nvim#mini.move (⭐5.3k) - Module of
mini.nvim
to move any selection (charwise, linewise, blockwise, current line in Normal mode) in any direction. Handles bothv:count
and undo history. - anuvyklack/pretty-fold.nvim (⭐445) - Foldtext customization.
- bennypowers/nvim-regexplainer (⭐627) - Explain the regular expression under the cursor.
- gbprod/stay-in-place.nvim (⭐91) - Neovim plugin that prevent cursor from moving when using shift and filter actions.
- echasnovski/mini.nvim#mini.ai (⭐5.3k) - Module of
mini.nvim
for extending and creatinga
/i
textobjects. It enhances some builtin textobjects, creates extensive set of new ones (likea*
,a<Space>
,a?
, and more), and allows user to create their own (via Lua patterns or functions). Supports dot-repeat, different search methods, consecutive application, and more. - Wansmer/treesj (⭐1k) - Splitting/joining blocks of code like arrays, hashes, statements, objects, dictionaries, etc. Using Tree-sitter. Inspired by greatest splitjoin.vim.
- bennypowers/splitjoin.nvim (⭐76) - Split and join various syntax structures.
- echasnovski/mini.nvim#mini.splitjoin (⭐5.3k) - Module of
mini.nvim
to split and join arguments. Has customizable pre and post hooks. Works inside comments. - shortcuts/no-neck-pain.nvim (⭐582) - Center the currently focused buffer to the middle of your terminal.
- debugloop/telescope-undo.nvim (⭐674) - A telescope extension to visualize your undo tree and fuzzy-search changes in it.
- chrisgrieser/nvim-various-textobjs (⭐617) - Bundle of more than 30 new text objects.
- XXiaoA/ns-textobject.nvim (⭐37) - Awesome textobject plugin works with nvim-surround.
- ~nedia/auto-save.nvim - Extremely simple auto saving on
InsertLeave
&TextChanged
. Based on Pocco81/AutoSave but lighter. - echasnovski/mini.nvim#mini.basics (⭐5.3k) - Module of
mini.nvim
with customizable configuration presets for common options, mappings, and autocommands. - niuiic/part-edit.nvim (⭐14) - Edit a part of a file individually.
- niuiic/divider.nvim (⭐25) - Custom code divider line.
- CKolkey/ts-node-action (⭐360) - A framework for executing functional transformations on Tree-sitter nodes - Has a lot of built-in actions for transforming text.
- tomiis4/hypersonic.nvim (⭐216) - Provides explanation for RegExp.
- chrisgrieser/nvim-puppeteer (⭐61) - Automatically convert strings to f-strings or template strings and back.
- nat-418/boole.nvim (⭐163) - Toggle booleans and common string values.
- cshuaimin/ssr.nvim (⭐933) - Tree-sitter based structural search and replace.
- Jxstxs/conceal.nvim (⭐71) - Use Tree-sitter to conceal common boilerplate code.
- hiberabyss/bzlops.vim (⭐4) - Help to manage your bazel build rule.
- altermo/iedit.nvim (⭐21) - Edit one occurrence of text and simultaneously have other selected occurrences edited in the same way.
- ptdewey/yankbank-nvim (⭐113) - Enable streamlined access to recent yanks and deletions in a quick-access popup menu.
- OXY2DEV/foldtext.nvim (⭐58) - Dynamic & stylized foldtext.
- tummetott/unimpaired.nvim (⭐63) - Lua port of tpope/vim-unimpaired (⭐3.3k).
Comment
- numToStr/Comment.nvim (⭐4k) - Smart and Powerful comment plugin. Supports commentstring, motions, dot-repeat and more.
- b3nj5m1n/kommentary (⭐533) - Commenting plugin written in Lua.
- gennaro-tedesco/nvim-commaround (⭐41) - Fast and light commenting plugin written in Lua.
- folke/todo-comments.nvim (⭐3.3k) - Highlight, list and search todo comments in your projects.
- terrortylor/nvim-comment (⭐482) - Toggle comments using the built-in commentstring option.
- winston0410/commented.nvim (⭐110) - A commenting plugin that supports counts and multiple comment patterns and much more.
- s1n7ax/nvim-comment-frame (⭐96) - Adds a comment frame based on the source file.
- danymat/neogen (⭐1.3k) - A better annotation generator. Supports multiple languages and annotation conventions.
- echasnovski/mini.nvim#mini.comment (⭐5.3k) - Module of
mini.nvim
for per-line commenting. Fully supports dot-repeat. - LudoPinelli/comment-box.nvim (⭐414) - Clarify and beautify your comments using boxes and lines.
- JoosepAlviste/nvim-ts-context-commentstring (⭐1.2k) - Sets the
commentstring
option based on the cursor location in the file. The location is checked via Tree-sitter queries. - LucasTavaresA/SingleComment.nvim (⭐8) - Always single line, comment sensitive, indentation preserving commenting.
- Zeioth/dooku.nvim (⭐41) - Generate and open your HTML code documentation.
Formatting
- gpanders/editorconfig.nvim (⭐323) - An EditorConfig plugin written in Fennel.
- mhartington/formatter.nvim (⭐1.4k) - A format runner written in Lua.
- lukas-reineke/lsp-format.nvim (⭐578) - A wrapper around Neovims native LSP formatting.
- sbdchd/neoformat (⭐2k) - A (Neo)vim plugin for formatting code.
- cappyzawa/trim.nvim (⭐127) - This plugin trims trailing whitespace and lines.
- mcauley-penney/tidy.nvim (⭐110) - Clear trailing whitespace and empty lines at end of file on every save.
- MunifTanjim/prettier.nvim (⭐289) - Prettier integration.
- echasnovski/mini.nvim#mini.align (⭐5.3k) - Module of
mini.nvim
for aligning text interactively (with or without instant preview). - emileferreira/nvim-strict (⭐36) - Strict, native code style formatting which exposes deep nesting, overlong lines, trailing whitespace, trailing empty lines, todos and inconsistent indentation.
- ~nedia/auto-format.nvim - Does no formatting by itself, but sets up an autocmd to format on save, preferring null-ls over LSP client formatting.
- tenxsoydev/tabs-vs-spaces.nvim (⭐21) - Hint and fix deviating indentation.
- bennypowers/svgo.nvim (⭐2) - Optimize SVG files.
- niuiic/format.nvim (⭐35) - An asynchronous, multitasking, and highly configurable formatting plugin.
- elentok/format-on-save.nvim (⭐159) - A synchronous formatter that combines LSP and non-LSP formatting (e.g. shfmt, stylua, prettier), focused specifically on format-on-save.
- stevearc/conform.nvim (⭐3.2k) - A lightweight formatting engine that plays nice with LSP.
- nvimdev/guard.nvim (⭐454) - Minimalist async formatting and linting plugin.
Indent
- nvimdev/indentmini.nvim (⭐206) - A minimal and blazing fast indentline plugin by using nvim_set_decoration_provide API.
- lukas-reineke/indent-blankline.nvim (⭐4.3k) - IndentLine replacement in Lua with more features and Tree-sitter support.
- LucasTavaresA/simpleIndentGuides.nvim (⭐9) - Indentation guides using the builtin variables.
- echasnovski/mini.nvim#mini.indentscope (⭐5.3k) - Module of
mini.nvim
for visualizing and operating on indent scope. Supports customization of debounce delay, animation style, and different granularity of options for scope computing algorithm. - NMAC427/guess-indent.nvim (⭐413) - Automatic indentation style detection.
- Darazaki/indent-o-matic (⭐184) - Dumb automatic fast indentation detection written in Lua.
- yaocccc/nvim-hlchunk (⭐49) - Highlight a
{}
chunk. - shellRaining/hlchunk.nvim (⭐656) - A Lua implementation of
nvim-hlchunk
, contains more features, such as highlight{}
chunk, indent line, space blank etc. - VidocqH/auto-indent.nvim (⭐76) - Auto indent cursor when cursor at the first column and press
<TAB>
key like VSCode. - Mr-LLLLL/cool-chunk.nvim (⭐24) - Simpler and faster chunking with animations.
- gh-liu/fold_line.nvim (⭐54) - Lines for indicating code folding, which could achieve an effect similar to indentline by
:set fdm=indent
.
Command Line
- notomo/cmdbuf.nvim (⭐116) - Alternative command-line-window plugin.
- gelguy/wilder.nvim (⭐1.4k) - A plugin for fuzzy command line autocompletion.
Session
- rmagatti/auto-session (⭐1.3k) - A small automated session manager.
- echasnovski/mini.nvim#mini.sessions (⭐5.3k) - Module of
mini.nvim
for session management (read, write, delete). - gennaro-tedesco/nvim-possession (⭐235) - The no-nonsense session manager.
- olimorris/persisted.nvim (⭐455) - Simple session management with Git branching, autosave/autoload and Telescope support.
- Shatur/neovim-session-manager (⭐532) - A simple wrapper around :mksession.
- jedrzejboczar/possession.nvim (⭐365) - Flexible session management with arbitrary persistent data stored as JSON.
- niuiic/multiple-session.nvim (⭐9) - Provides multi-session management capabilities.
- RutaTang/spectacle.nvim (⭐13) - Easily manage multiple sessions with telescope integration.
- coffebar/neovim-project (⭐203) - Declarative project management, automatic saving of sessions, uses Telescope.
- njayman/season.nvim (⭐2) - A lightweight plugin to manage session based on current working directory.
Remote Development
- chipsenkbeil/distant.nvim (⭐1.2k) - Edit files, run programs, and work with LSP on a remote machine from the comfort of your local environment.
- jamestthompson3/nvim-remote-containers (⭐888) - Develop inside docker containers, just like VSCode.
- esensar/nvim-dev-container (⭐566) - Neovim devcontainer.json and general development container support.
- miversen33/netman.nvim (⭐338) - Lua powered Network Resource Manager.
- niuiic/remote.nvim (⭐37) - Edit remote files with local configuration.
- nosduco/remote-sshfs.nvim (⭐206) - Explore, edit, and develop on a remote machine via SSHFS.
- live-share.nvim (⭐123) - Provides remote collaboration capabilities from anywhere, making it ideal for pair-programming scenarios.
Split and Window
- ~henriquehbr/ataraxis.lua - A zen mode for improving code readability on Neovim.
- yorickpeterse/nvim-window (⭐120) - Easily jump between Neovim windows.
- sindrets/winshift.nvim (⭐479) - Rearrange your windows with ease.
- nvim-focus/focus.nvim (⭐721) - Auto-Focusing and Auto-Resizing Splits/Windows written in Lua! Vim splits on steroids.
- anuvyklack/windows.nvim (⭐537) - Automatically expand width of the current window. Maximizes and restore it. And all this with nice animations!
- nvim-zh/colorful-winsep.nvim (⭐440) - A configurable color split line.
- nyngwang/NeoNoName.lua (⭐29) - Layout preserving buffer deletion.
- famiu/bufdelete.nvim (⭐517) - Delete Neovim buffers without losing your window layout.
- echasnovski/mini.nvim#mini.bufremove (⭐5.3k) - Module of
mini.nvim
for buffer removing (unshow, delete, wipeout) while saving window layout. - jyscao/ventana.nvim (⭐18) - Convenient flips & shifts for your windows layout.
- mrjones2014/smart-splits.nvim (⭐985) - Smart, seamless, directional navigation and resizing of splits.
- altermo/nwm (⭐319) - X11 window manager.
Tmux
- aserowy/tmux.nvim (⭐645) - Tmux integration features pane movement and resizing.
- danielpieper/telescope-tmuxinator.nvim (⭐24) - Integration for tmuxinator with telescope.nvim.
- hkupty/nvimux (⭐445) - Neovim as tmux replacement.
- numToStr/Navigator.nvim (⭐399) - Smoothly navigate between Neovim splits and Tmux panes.
- declancm/windex.nvim (⭐62) - Collection of window functions which includes moving between, closing and maximizing Neovim splits and Tmux panes.
- otavioschwanck/tmux-awesome-manager.nvim (⭐70) - Run your workflow commands like yarn install, rails console, yarn add, bundle install, etc.
- karshPrime/only-tmux.nvim (⭐10) - Expand the functionality of
:only
with tmux panes in the same window, with either moving them to a new window or closing them. - karshPrime/tmux-compile.nvim (⭐13) - Set up same key, like F5, to run any compile/run command per language, like
make
for C andcargo build
for Rust, and have the project run or compile in a new tmux pane or window. - EvWilson/slimux.nvim (⭐21) - Send content from the current buffer to a configurable tmux pane.
Game
- ThePrimeagen/vim-be-good (⭐3.3k) - Vim-be-good is a Neovim plugin designed to make you better at Vim Movements.
- alec-gibson/nvim-tetris (⭐200) - Bringing emacs' greatest feature to Neovim - Tetris!.
- seandewar/nvimesweeper (⭐101) - Play Minesweeper in your favourite text editor.
- seandewar/killersheep.nvim (⭐68) - Neovim port of killersheep.
- rktjmp/playtime.nvim (⭐67) - A collection of games such as Freecell, Shenzhen Solitaire and The Emissary.
- Eandrju/cellular-automaton.nvim (⭐1.9k) - It lets you execute aesthetically pleasing, cellular automaton animations based on the content of Neovim buffer.
- alanfortlink/blackjack.nvim (⭐57) - Classic Black Jack game.
- jim-fx/sudoku.nvim (⭐68) - Classic sudoku puzzle.
Competitive Programming
- p00f/cphelper.nvim (⭐134) - Neovim helper for competitive programming written in Lua.
- xeluxee/competitest.nvim (⭐438) - A plugin to automate testcases management and checking for Competitive Programming contests.
- kawre/leetcode.nvim (⭐1.1k) - Solve Leetcode problems.
Workflow
- m4xshen/hardtime.nvim (⭐1.5k) - Helping you establish good command workflow and habit.
- antonk52/bad-practices.nvim (⭐104) - Helping you give up bad practices in Vim.
Preconfigured Configuration
- Cris-lml007/NeoPlus (⭐9) - NeoPlus is a free, open source IDE with tools that works on Neovim.
- pgosar/CyberNvim (⭐331) - The world's simplest and most extensible Neovim distribution.
- sontungexpt/stinvim (⭐42) - Ready Neovim's configuration for fullstack developers.
- Abstract-IDE/Abstract (⭐187) - Abstract, The Neovim configuration to achieve the power of Modern IDE.
- SpaceVim/SpaceVim - A community-driven modular Vim/Neovim distribution, like spacemacs but for Vim/Neovim.
- CosmicNvim/CosmicNvim (⭐1.1k) - CosmicNvim is a lightweight and opinionated Neovim config for web development, specifically designed to provide a COSMIC programming experience!
- artart222/CodeArt (⭐889) - A fast general-purpose IDE written entirely in Lua with an installer for Linux/Windows/macOS and built in
:CodeArtUpdate
command for updating it. - LazyVim/LazyVim (⭐17k) - Full-fledged IDE powered by lazy.nvim to make it easy to customize and extend your config.
- legobeat/l7-devenv (⭐19) - Security-focused IDE with a hackable (in the right way) framework based on Neovim and shell.
- crispybaccoon/chaivim (⭐60) - Easily configurable distro with solid defaults and a cozy editor experience.
- crivotz/nv-ide (⭐600) - Neovim custom configuration, oriented for full stack developers (Rails, Ruby, PHP, HTML, CSS, SCSS, JavaScript).
- LunarVim/LunarVim (⭐18k) - This project aims to help one transition away from VSCode, and into a superior text editing experience.
- hackorum/VapourNvim (⭐535) - A Neovim config for THE ULTIMATE Vim IDE-like experience.
- siduck76/NvChad (⭐25k) - An attempt to make Neovim cli as functional as an IDE while being very beautiful and less bloated.
- nvoid-lua/nvoid (⭐101) - Simple Neovim config written in Lua with all the modern features available in any IDE
- cstsunfu/.sea.nvim (⭐146) - A modular Neovim configuration with beautiful UI and some useful features(Pomodoro Clock, Window Number).
- shaeinst/roshnivim (⭐187) - Roshnivim, can be called Neovim's distro, is a predefined configs so that you don't need 1000hr to setup Neovim as an IDE.
- AstroNvim/AstroNvim (⭐13k) - AstroNvim is an aesthetic and feature-rich Neovim config that is extensible and easy to use with a great set of plugins.
- shaunsingh/nyoom.nvim (⭐1.4k) - Blazing fast, configurable, minimal and lispy Neovim config written in Fennel. Base config for users to extend and add upon, leading to a more unique editing experience.
- jrychn/moduleVim (⭐9) - A very easy to use for backend and frontend, install LSP automatically.
- imbacraft/dusk.nvim (⭐48) - Dusk is a lightweight, aesthetically minimal Neovim config, written in Lua, able to provide for web and Java development.
- nvim-lua/kickstart.nvim (⭐20k) - A launch point for your personal Neovim configuration.
- dam9000/kickstart-modular.nvim (⭐486) - This is a fork of nvim-lua/kickstart.nvim that moves from a single file to a multi file configuration.
- cunderw/nvim (⭐10) - Neovim custom configuration, focused on JS/TS, Go, and Java development. Very IDE like.
- otavioschwanck/mood-nvim (⭐97) - Ready to use configuration for Ruby on Rails, JavaScript and Typescript.
- ldelossa/nvim-ide (⭐833) - A full featured IDE layer heavily inspired by VSCode.
- jonathandion/web-dev.nvim (⭐67) - Small, simple and flexible configuration for web development.
- linrongbin16/lin.nvim (⭐74) - A highly configured Neovim distribution integrated with tons of utilities for development, inspired by spf13-vim.
- doctorfree/nvim-lazyman (⭐296) - Neovim configuration manager and modular configuration, supports over 40 preconfigured configurations.
- NormalNvim/NormalNvim (⭐525) - Focused on stability for your daily work. From the creator of Compiler.nvim.
- chrisgrieser/nvim-kickstart-python (⭐125) - A launch point for your Neovim configuration for Python.
- mrcjkb/kickstart-nix.nvim (⭐231) - A simple Nix flake template repo for Neovim derivations, with the goal of simplifying the migration from existing Neovim configurations.
- drybalka/clean.nvim (⭐35) - Cleaning up the default key mappings and plugins and leaving only the bare essentials to build upon.
- StratOS-Linux/StratVIM (⭐13) - A full-fledged Neovim distribution included by default in StratOS, an upcoming Arch-based Linux distro.
- Shaobin-Jiang/IceNvim (⭐146) - A beautiful, powerful and customizable config that is blazingly fast.
- ayamir/nvimdots (⭐2.9k) - A well-configured and structured configuration with NixOS support.
- adoyle-h/one.nvim (⭐153) - All-in-one config framework in Lua.
External
These tools are used externally to Neovim to enhance the experience.
Version Manager
- MordechaiHadad/bob (⭐1.5k) - A cross platform and easy to use Neovim version manager.
- NTBBloodbath/nvenv (⭐53) - A lightweight and blazing fast Neovim version manager.
Boilerplate
- gennaro-tedesco/boilit (⭐77) - Create boilerplate structure plugins.
- m00qek/plugin-template.nvim (⭐119) - A plugin template that setups test infrastructure and GitHub Actions.
- ellisonleao/nvim-plugin-template (⭐286) - Another Neovim plugin template, using GitHub's template feature.
- 2KAbhishek/template.nvim (⭐6) - Opinionated template for starting plugin dev quickly.
OS-specific
- chrisgrieser/alfred-neovim-utilities (⭐36) - Search Neovim plugins and online
:help
via Alfred (macOS). - massix/termux.nvim (⭐24) - Interact with Termux APIs, useful to gather various information about your Android phone to display in the statusline (e.g. battery level).
- m15a/flake-awesome-neovim-plugins (⭐52) - Nix flake that provides Awesome Neovim plugins collection as Nix packages.
Wishlist
Have a problem a plugin can solve? Add it to the nvim-lua wishlist (⭐236).
UI
Neovim supports a wide variety of UI's. You can find them listed on the Neovim wiki (⭐83k)
Starter Templates
- tokiory/neovim-boilerplate (⭐95) - Starter boilerplate for making new configurations.
- frans-johansson/lazy-nvim-starter (⭐83) - Starter boilerplate with lazy plugin manager.
Vim
- Vimawesome - Showcases various plugins for Vim and has a Neovim tag for other plugins targeting Neovim.
- awesome-vim (⭐2k) - Short list of Vim plugins and helpful guides.
- vim-plugin-list (⭐127) - List of Vim and Neovim plugins.
Resource
- Neovimcraft - A site dedicated to searching specific plugins and guides for building plugins in Lua.
- Dotfyle - Dotfyle is a site for sharing and discovering Neovim configs and plugins.
- NeoLand - A beautifully crafted website for Neovim resources.
- Nvim-training (⭐51) - A beginner-friendly tool for training your 'muscle memory' using small, repeatable tasks.