unsubbed.co

Neovim

The hyperextensible Vim fork that rewards the time you invest — sub-100ms startup, modal editing, total customization, and no licensing fees.

Best for: Developers who value keyboard-driven editing, want full control over their environment, and are willing to invest hours — realistically days — configuring it, especially those who edit text over SSH regularly.

TL;DR

  • What it is: A modernized fork of Vim with Lua scripting, built-in LSP, Tree-sitter parsing, and an API that turns it into a platform for building your own IDE. Free, open-source (Apache 2.0), runs everywhere.
  • Who it’s for: Developers who value keyboard-driven editing, want full control over their environment, and are willing to invest hours (realistically: days) configuring it. Power users, sysadmins, and anyone who edits text over SSH.
  • Cost savings: There is no SaaS to compare against. VS Code is free. JetBrains IDEs cost $149–249/year. Neovim is free and will always be free. The cost is your time.
  • Key strength: Once configured, nothing is faster. Reviewers consistently report sub-100ms startup times with 30+ plugins, compared to 4–5 seconds for VS Code. Modal editing with Vim motions is genuinely more efficient for text manipulation once internalized.
  • Key weakness: The configuration cliff is real. Out of the box, Neovim is a terminal text editor with syntax highlighting and not much else. Getting it to IDE-level functionality requires assembling plugins and writing Lua config. Expect 10–40 hours before you’re productive.

What is Neovim

Neovim is a fork of Vim, the 30-year-old terminal text editor that ships on every Unix system. The project started in 2014 with the goal of modernizing Vim’s codebase — refactoring the C code, adding asynchronous job control, replacing Vimscript with Lua as the extension language, and creating a proper API so external programs can embed and control the editor.

The result, twelve years later, is a text editor that feels like a platform. Neovim at 97K GitHub stars is not competing with Vim for the “best terminal editor” crown — it’s competing with VS Code, JetBrains, Cursor, and Zed for the “best development environment” title. The difference is that Neovim gives you the pieces and expects you to assemble them yourself.

The features that matter: built-in Language Server Protocol (LSP) client for code intelligence (go-to-definition, find references, diagnostics), Tree-sitter integration for fast and accurate syntax highlighting, Lua-first configuration that makes plugins genuinely easy to write, and an embedded terminal emulator. The API allows any programming language to control Neovim — which is why there are Neovim GUIs written in Rust (Neovide), Electron (VSCode-Neovim), and even a browser extension (Firenvim).

As of this review: 97,287 GitHub stars, Apache 2.0 license, available through every major package manager (Homebrew, apt, pacman, choco), and 0.11 is the current stable release.


Why people choose it over VS Code, Vim, Zed, and JetBrains

Versus VS Code

This is the comparison most people care about. Neovim starts in 94 milliseconds with 30 plugins. VS Code takes 4.5 seconds on first launch. That speed difference compounds — every file open, every project switch, every terminal split happens faster.

But speed alone doesn’t explain the loyalty. The real argument is modal editing. Vim motions — ciw to change a word, dd to delete a line, f( to jump to the next parenthesis — are a different paradigm for text manipulation. Once you internalize them (weeks to months of practice), you edit text faster than with a mouse. VS Code has a Vim extension, but it’s an emulation layer that doesn’t cover everything.

The counterargument is fair: VS Code works out of the box. Install it, open a folder, start coding. Neovim requires assembly. For someone who just wants to write code and doesn’t care about editor optimization, VS Code is the right choice.

Versus Vim

Neovim is Vim with better internals. The practical differences: Lua replaces Vimscript for configuration (faster, more readable), built-in LSP means you don’t need heavy plugins like CoC, Tree-sitter gives you parsing-based highlighting instead of regex-based, and asynchronous job control means plugins don’t freeze the editor. Most Vim plugins work in Neovim unchanged.

Choose Neovim for modern development environments and collaboration. Choose Vim for efficient text editing on servers where you need nothing else.

Versus Zed

Zed is the interesting new competitor — a Rust-based editor from the creators of Atom, with native performance and built-in AI integration. Steve Dylan wrote about leaving Neovim for Zed after years of use. His argument: Zed gives you 90% of the speed benefits of Neovim with 10% of the configuration effort. You get Vim mode, instant startup, native LSP, and AI features without writing a single line of config.

The honest take: if you value Vim motions but don’t want to maintain a config, Zed is worth trying. If you value the depth of customization — custom keybindings for every possible action, plugins that do exactly what you want, a terminal multiplexer inside your editor — Neovim is still unmatched.

Versus JetBrains

JetBrains IDEs are the gold standard for language-specific tooling. Refactoring, debugging, database tools, profiling — all built-in, all polished. The practical divide: if you work in one language ecosystem (Java, Python, Ruby) and need deep tooling, JetBrains is hard to beat. If you work across multiple languages and value a lightweight, fast, customizable environment, Neovim makes more sense. And Neovim is free, while JetBrains costs $149–249/year per IDE.


Features: what it actually does

Core editor:

  • Modal editing (Normal, Insert, Visual, Command-line modes)
  • Built-in LSP client for code intelligence (go-to-definition, find references, rename, diagnostics)
  • Tree-sitter integration for parsing-based syntax highlighting, code folding, and text objects
  • Embedded terminal emulator
  • Asynchronous job control — plugins don’t freeze the editor
  • Lua-first configuration and plugin system
  • Compatible with most Vim plugins including Ruby and Python plugins
  • XDG base directory support

Extension ecosystem:

  • Plugin managers: lazy.nvim (most popular), packer.nvim
  • LSP configurations: nvim-lspconfig for 100+ language servers
  • Autocompletion: nvim-cmp with snippet support
  • File navigation: telescope.nvim (fuzzy finder), nvim-tree (file explorer)
  • Git integration: fugitive, gitsigns, lazygit
  • Debugging: nvim-dap (Debug Adapter Protocol)
  • AI integration: various Copilot, ChatGPT, and Claude plugins available
  • “Distros” (pre-configured setups): LazyVim, AstroNvim, NvChad, kickstart.nvim

Platform capabilities:

  • API accessible from any language (C, Python, Lua, Rust, JavaScript, etc.)
  • Multiple GUI frontends: Neovide (Rust), VimR (macOS), FVim, Neovim Qt
  • Browser embedding via Firenvim
  • VS Code embedding via vscode-neovim
  • Remote editing via SSH (works natively since it’s a terminal app)

Deployment reality check

“Deployment” for a text editor means installation and configuration.

Installation: trivial on any platform.

  • macOS: brew install neovim
  • Ubuntu/Debian: apt install neovim (or AppImage for latest)
  • Arch: pacman -S neovim
  • Windows: choco install neovim or scoop install neovim

Configuration: where the time goes.

For beginners, the recommended approach is:

  1. Start with kickstart.nvim (a minimal, well-documented starter config) or LazyVim (a full “distro”)
  2. Use it for a few weeks to learn Vim motions
  3. Gradually replace/customize components as you understand what you want

What can go sideways:

  • Plugin compatibility breaks. Neovim moves fast, and plugins occasionally lag behind API changes.
  • The “distro” trap. LazyVim and AstroNvim give you an IDE-like experience fast, but you’re now maintaining someone else’s config on top of Neovim. When something breaks, you need to understand both layers.
  • Lua is not hard, but it’s not nothing. If you’ve never written Lua, expect a learning curve on top of learning Vim motions.
  • The Neovim-to-Zed pipeline is real. Steve Dylan’s experience represents a common arc: invest heavily in Neovim config, realize Zed gives you 90% of the benefit with less maintenance, switch. Whether that bothers you depends on how much you value the remaining 10%.

Realistic timeline: 1–2 weeks to be functional. 1–2 months to be comfortable. 6+ months to be faster than you were in VS Code.


Who should use this (and who shouldn’t)

Use Neovim if:

  • You spend 4+ hours a day editing code and want to optimize that time.
  • You enjoy configuring tools and see your editor config as a long-term investment.
  • You work over SSH regularly and need an editor that’s native to the terminal.
  • You value keyboard-driven workflows and want to minimize mouse usage.
  • You want a free, open-source editor with no corporate dependencies.

Skip it (use VS Code) if:

  • You want something that works immediately with zero configuration.
  • You switch between coding and other tasks frequently and don’t want to maintain a separate tool.
  • Your team standardizes on VS Code and you need consistency.
  • You value the VS Code extension marketplace’s breadth (75K+ extensions).

Skip it (use Zed) if:

  • You want Vim motions and native performance without the configuration overhead.
  • You want built-in AI features that work out of the box.
  • You value real-time collaboration (Zed’s multiplayer is first-class).

Skip it (use JetBrains) if:

  • You work in one language ecosystem and need the deepest possible tooling for it.
  • You value integrated debugging, profiling, and database tools over editor speed.

Alternatives worth considering

  • VS Code — The default for a reason. Free, massive ecosystem, works immediately. Less fast, less customizable at the deep level.
  • Zed — Rust-based, fast, built-in Vim mode, AI features, multiplayer. The strongest “Neovim for people who don’t want to configure” option.
  • Vim — The original. Use it if you need a stable, everywhere-available terminal editor and don’t care about Lua scripting or LSP.
  • Cursor — VS Code fork with deep AI integration ($20/mo). For developers who want AI pair programming more than editor speed.
  • Helix — A newer modal editor written in Rust with built-in LSP. Less configurable than Neovim but functional out of the box.
  • Emacs — The other extensible editor dynasty. Even steeper learning curve than Neovim.

Bottom line

Neovim is the best text editor in the world for people willing to build their own text editor. That’s not sarcasm — it’s the honest value proposition. The speed is real, the modal editing efficiency is real, the customization depth is unmatched. But the investment is also real: hours of configuration, weeks of learning Vim motions, ongoing maintenance of your plugin setup.

The question is whether that investment pays off. For developers who spend most of their day in an editor and plan to for years, the answer is almost certainly yes. For everyone else, the new generation of editors (Zed, Cursor) is closing the gap fast enough that the configuration tax may not be worth paying.

If you’re curious but intimidated, start with LazyVim. It gives you an IDE-like Neovim in 15 minutes. Use it for a month. If you find yourself wanting to change things, you’re a Neovim person. If you find yourself wishing it just worked like VS Code, it’s fine to go back.

Sources

This review synthesizes 6 independent third-party articles along with primary sources from the project itself. Inline references throughout the review map to the numbered list below.

  1. [1] gabsavard.com by Gab Savard (2025-01-28) — “Using NeoVim in 2025” — tutorial (link)
  2. [2] dev.to by Oscar (2024-05-13) — “Ditch VSCode. Just use Neovim.” — praise (link)
  3. [3] geekflare.com by Rishav Kumar (2025-04-08) — “Neovim vs. Vim: Which is the Right Text Editor for You?” — comparison (link)
  4. [4] stevedylan.dev by Steve Simkins (2024-08-16) — “Leaving Neovim for Zed” — migration (link)
  5. [5] zed.dev by Thorsten Ball (06/13/2024) — “Why not just embed Neovim?” — comparison (link)
  6. [6] vale.rocks by Declan Chidlow (2025-07-12) — “HOW I CONFIGURE NEOVIM” — deployment (link)
  7. [7] GitHub repository — official source code, README, releases, and issue tracker (https://github.com/neovim/neovim)
  8. [8] Official website — Neovim project homepage and docs (https://neovim.io)

References [1]–[8] above were used to cross-check claims about features, pricing, deployment, and limitations in this review.

Features

Integrations & APIs

  • Plugin / Extension System