Skip to content

rockerBOO/awesome-neovim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Neovim Awesome

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

⬆ back to top

LSP

(requires Neovim 0.5)

LSP Installer

Diagnostics

⬆ back to top

Completion

⬆ back to top

AI

  • Aaronik/GPTModels.nvim - GPTModels - a stable, clean, multi model, window based LLM AI tool.
  • Robitx/gp.nvim - ChatGPT like sessions and instructable text/code operations in your favorite editor.
  • dpayne/CodeGPT.nvim - Provides commands to interact with ChatGPT, the focus is around code related usages.
  • jackMort/ChatGPT.nvim - Effortless Natural Language Generation with OpenAI's ChatGPT API.
  • CamdenClark/flyboy - Simple interaction with ChatGPT in a markdown buffer. Supports GPT-4 and Azure OpenAI.
  • gsuuon/model.nvim - Integrate LLMs via a prompt builder interface. Multi-providers including OpenAI (+ compatibles), PaLM, HuggingFace and local engines like llamacpp.
  • dense-analysis/neural - Integrate LLMs for generating code, interacting with chat bots, and more.
  • jpmcb/nvim-llama - LLM (Llama 2 and llama.cpp) wrappers.
  • David-Kunz/gen.nvim - Generate text using LLMs (via Ollama) with customizable prompts.
  • kiddos/gemini.nvim - Bindings to Google Gemini API.
  • olimorris/codecompanion.nvim - Copilot Chat like experience, complete with inline assistant. Supports Anthropic, Gemini, Ollama and OpenAI.
  • simplegpt.nvim - Provide a simple yet flexible way to construct and send questions to ChatGPT.
  • Exafunction/codeium.nvim - Free, ultrafast Copilot alternative. Supports LSP and Tree-sitter.
  • CopilotC-Nvim/CopilotChat.nvim - A chat interface for GitHub Copilot that allows you to directly ask and receive answers to coding-related questions.
  • tzachar/cmp-ai - This is a general purpose AI source for nvim-cmp, easily adapted to any REST API supporting remote code completion.
  • milanglacier/minuet-ai.nvim - Minuet offers code completion from popular LLMs including OpenAI (compatible), Gemini, Claude, and more providers. Dance with intelligence in your code.
  • yetone/avante.nvim - Chat with your code as if you are in Cursor AI IDE.
  • Kurama622/llm.nvim - Free large language model (LLM) support, provides commands to interact with LLM.
  • 3v0k4/exit.nvim - Prompt LLMs (large language models) to write Vim commands.
  • k2589/LLuMinate.nvim - Enrich context for LLM with LSP hover added to clipboard.

⬆ back to top

Programming Languages Support

Golang

YAML

Web Development

Markdown and LaTeX

PHP

  • gbprod/phpactor.nvim - Lua version of the Phpactor Vim plugin to take advantage of the latest Neovim features.
  • ta-tikoma/php.easy.nvim - Methods of assistance in PHP development: create classes, constants, methods, properties; simple copying and deleting of an entity.

⬆ back to top

Language

⬆ back to top

Syntax

⬆ back to top

Snippet

⬆ back to top

Register

⬆ back to top

Marks

⬆ back to top

Search

⬆ back to top

Fuzzy Finder

  • nvim-telescope/telescope.nvim - Telescope.nvim is a highly extendable 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 - A Lua API for using FZF (Neovim >= 0.5). Allows for full asynchronicity for UI speed and usability.
  • camspiers/snap - An extensible fuzzy finder. Similar to Telescope, and optimized for performance, especially when grepping in large codebases.
  • ibhagwan/fzf-lua - The Lua version of fzf.vim, high-performance and fully async, supports nvim-web-devicons, Git indicators, LSP, quickfix/location lists and more. Also supports skim as its fzf binary.
  • jvgrootveld/telescope-zoxide - Telescope integration for zoxide, a smart directory picker that tracks your usage.
  • echasnovski/mini.nvim#mini.fuzzy - Module of mini.nvim with functions to perform fuzzy matching of one string to others along with fast Telescope sorter.
  • axkirillov/easypick.nvim - Easypick lets you easily create Telescope pickers from arbitrary console commands.
  • linrongbin16/fzfx.nvim - A fuzzy finder that updates on every keystroke.
  • echasnovski/mini.nvim#mini.pick - 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 - Module of mini.nvim with extra functionality for its modules. Contains 20+ 'mini.pick' pickers, 'mini.ai' textobjects, and more.
  • fdschmidt93/telescope-egrepify.nvim - Telescope plugin for better rg flags in live_grep.
  • crispgm/telescope-heading.nvim - Telescope extension to switch between headings of AsciiDoc, Markdown, Vimdoc, etc.

⬆ back to top

File Explorer

⬆ back to top

Project

⬆ back to top

Color

⬆ back to top

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.

Lua Colorscheme

These colorschemes may not specialize in Tree-sitter directly but are written in Lua.

Colorscheme Creation

  • tjdevries/colorbuddy.nvim - A colorscheme helper. Written in Lua! Quick & Easy Color Schemes.
  • norcalli/nvim-base16.lua - Programmatic Lua library for setting base16 themes.
  • rktjmp/lush.nvim - Define Neovim themes as a DSL in Lua, with real-time feedback.
  • roobert/palette.nvim - A beautiful, versatile, systematic, theme system.
  • Iron-E/nvim-highlite - A colorscheme generator that is "lite" on logic for the developer.
  • echasnovski/mini.nvim#mini.base16 - Module of mini.nvim with fast implementation of base16 theme for manually supplied palette.
  • ThemerCorp/themer.lua - 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 - 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 - 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 - 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

⬆ back to top

Bars and Lines

Statusline

Tabline

Cursorline

⬆ back to top

Startup

⬆ back to top

Icon

⬆ back to top

Media

⬆ back to top

Note Taking

⬆ back to top

Utility

CSV Files

⬆ back to top

Terminal Integration

⬆ back to top

Debugging

Quickfix

⬆ back to top

Deployment

⬆ back to top

Test

⬆ back to top

Code Runner

⬆ back to top

Neovim Lua Development

⬆ back to top

Fennel

⬆ back to top

Dependency Management

⬆ back to top

Git

GitHub

⬆ back to top

Motion

Tree-sitter Based

⬆ back to top

Keybinding

  • folke/which-key.nvim - Neovim plugin that shows a popup with possible keybindings of the command you started typing.
  • echasnovski/mini.nvim#mini.clue - 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 - 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 - a more convenient :mapping syntax for Lua environments.
  • LionC/nest.nvim - Lua utility to map keys concisely using cascading trees. Also allows binding Lua functions to keys.
  • slugbyte/unruly-worker.nvim - 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 - Create and manage keybindings and commands in a more organized manner and search them quickly through Telescope.
  • nvimtools/hydra.nvim - Create custom submodes and menus. Port of Emacs Hydra. Maintained fork of anuvyklack/hydra.nvim.
  • anuvyklack/keymap-amend.nvim - Amend the existing keymap.
  • max397574/better-escape.nvim - Create shortcuts to escape insert mode without getting delay.
  • Nexmean/caskey.nvim - Utility to keymappings configuration using declarative cascading trees, optionally integrates with which-key.
  • Wansmer/langmapper.nvim - Auto translating your mappings for non-English input methods.
  • tris203/hawtkeys.nvim - Suggest new easy-to-hit keymaps and find issues with your current keymap configurations.
  • mawkler/demicolon.nvim - Use ; and , keys to also repeat jumps to diagnostics (e.g. ]d) and to nvim-treesitter-textobjects (e.g. ]f), in addition to repeating t/T/f/F.
  • debugloop/layers.nvim - Craft temporary keymap overlays and layered modes with ease.

⬆ back to top

Mouse

⬆ back to top

Scrolling

Scrollbar

⬆ back to top

Editing Support

Comment

⬆ back to top

Formatting

Indent

⬆ back to top

Command Line

⬆ back to top

Session

⬆ back to top

Remote Development

⬆ back to top

Split and Window

Tmux

⬆ back to top

Game

Competitive Programming

⬆ back to top

Workflow

⬆ back to top

Preconfigured Configuration

  • Cris-lml007/NeoPlus - NeoPlus is a free, open source IDE with tools that works on Neovim.
  • pgosar/CyberNvim - The world's simplest and most extensible Neovim distribution.
  • sontungexpt/stinvim - Ready Neovim's configuration for fullstack developers.
  • Abstract-IDE/Abstract - 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 - CosmicNvim is a lightweight and opinionated Neovim config for web development, specifically designed to provide a COSMIC programming experience!
  • artart222/CodeArt - 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 - Full-fledged IDE powered by lazy.nvim to make it easy to customize and extend your config.
  • legobeat/l7-devenv - Security-focused IDE with a hackable (in the right way) framework based on Neovim and shell.
  • crispybaccoon/chaivim - Easily configurable distro with solid defaults and a cozy editor experience.
  • crivotz/nv-ide - Neovim custom configuration, oriented for full stack developers (Rails, Ruby, PHP, HTML, CSS, SCSS, JavaScript).
  • LunarVim/LunarVim - This project aims to help one transition away from VSCode, and into a superior text editing experience.
  • hackorum/VapourNvim - A Neovim config for THE ULTIMATE Vim IDE-like experience.
  • siduck76/NvChad - An attempt to make Neovim cli as functional as an IDE while being very beautiful and less bloated.
  • nvoid-lua/nvoid - Simple Neovim config written in Lua with all the modern features available in any IDE
  • cstsunfu/.sea.nvim - A modular Neovim configuration with beautiful UI and some useful features(Pomodoro Clock, Window Number).
  • shaeinst/roshnivim - 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 - 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 - 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 - A very easy to use for backend and frontend, install LSP automatically.
  • imbacraft/dusk.nvim - Dusk is a lightweight, aesthetically minimal Neovim config, written in Lua, able to provide for web and Java development.
  • nvim-lua/kickstart.nvim - A launch point for your personal Neovim configuration.
  • dam9000/kickstart-modular.nvim - This is a fork of nvim-lua/kickstart.nvim that moves from a single file to a multi file configuration.
  • cunderw/nvim - Neovim custom configuration, focused on JS/TS, Go, and Java development. Very IDE like.
  • otavioschwanck/mood-nvim - Ready to use configuration for Ruby on Rails, JavaScript and Typescript.
  • ldelossa/nvim-ide - A full featured IDE layer heavily inspired by VSCode.
  • jonathandion/web-dev.nvim - Small, simple and flexible configuration for web development.
  • linrongbin16/lin.nvim - A highly configured Neovim distribution integrated with tons of utilities for development, inspired by spf13-vim.
  • doctorfree/nvim-lazyman - Neovim configuration manager and modular configuration, supports over 40 preconfigured configurations.
  • NormalNvim/NormalNvim - Focused on stability for your daily work. From the creator of Compiler.nvim.
  • chrisgrieser/nvim-kickstart-python - A launch point for your Neovim configuration for Python.
  • mrcjkb/kickstart-nix.nvim - A simple Nix flake template repo for Neovim derivations, with the goal of simplifying the migration from existing Neovim configurations.
  • drybalka/clean.nvim - Cleaning up the default key mappings and plugins and leaving only the bare essentials to build upon.
  • StratOS-Linux/StratVIM - A full-fledged Neovim distribution included by default in StratOS, an upcoming Arch-based Linux distro.
  • Shaobin-Jiang/IceNvim - A beautiful, powerful and customizable config that is blazingly fast.
  • ayamir/nvimdots - A well-configured and structured configuration with NixOS support.
  • adoyle-h/one.nvim - All-in-one config framework in Lua.

⬆ back to top

External

These tools are used externally to Neovim to enhance the experience.

Version Manager

Boilerplate

OS-specific

⬆ back to top

Wishlist

Have a problem a plugin can solve? Add it to the nvim-lua wishlist.

⬆ back to top

UI

Neovim supports a wide variety of UI's. You can find them listed on the Neovim wiki

⬆ back to top

Starter Templates

⬆ back to top

Vim

⬆ back to top

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 - A beginner-friendly tool for training your 'muscle memory' using small, repeatable tasks.

⬆ back to top