Neovim, LazyVim, and the End of neovim-treesitter

I spend most of my day writing code in Neovim(I used Neovim BTW) with the LazyVim starter configuration. LazyVim's on-demand loading keeps my editor snappy, and its built-in nvim-treesitter integration gives me fast, syntax-aware highlighting, incremental selection, and powerful text-objects. The result? I can jump between functions, refactor large files, and spot errors instantly—saving at time on routine editing tasks.
What happened
On April 3, 2026, that setup changed.
The original nvim-treesitter repository was archived. But this wasn't a sudden abandonment—it was the culmination of two years of turbulence:
- 2024–2025: Neovim started absorbing Tree-sitter functionality directly into core (vim.treesitter.* APIs). Suddenly, a plugin that once provided essential features was competing with what was already built into the editor.
- The rewrite: The maintainers pushed a "full, incompatible rewrite" on the main branch. Old modules disappeared. Old configs broke. Plugins that depended on nvim-treesitter.query or nvim-treesitter.ts_utils started throwing "module not found" errors.
- The toll: Keeping parser versions in sync with Neovim's evolving expectations, maintaining query files for hundreds of languages, and fielding support requests, while the plugin's purpose was being quietly rendered redundant by the editor itself.
Rather than let the plugin rot with unfixed breakages, the remaining team archived it and pointed users to the community fork.
What this meant for my setup
I'm on Neovim 0.12+ with LazyVim. My nvim-treesitter config was minimal—just disabling markdown highlighting and leaving ensure_installed empty since LazyVim handles parsers on demand.
Still, I noticed:
- Warnings about "archived repository" in my plugin status
- A few plugin errors from code expecting the old API
- An unnecessary plugin trying to load when I'd rather it didn't
The fix was straightforward: update the plugin spec to branch = "main", run :Lazy sync, and everything reconnected. My workflow didn't skip a beat. The only real difference was faster startup—LazyVim no longer wasted cycles on a dying plugin.
Why this story matters
Here's what the archive doesn't show: years of unpaid labor. Hundreds of parser query files maintained across dozens of languages. Bug reports to answer. PRs to review. Breaking changes to communicate. And underneath it all, the quiet realization that the thing you'd built was being absorbed into the thing you were extending—and somehow you were still expected to maintain both.
The former neovim-treesitter maintainer took a new full-time job. They were burnt out. They're not alone.
Thousands of open-source projects run on exactly this kind of invisible work, maintained by people who have jobs, families, and lives outside their code. They give because they care. But care doesn't pay the bills, and silence from users doesn't tell them their work matters.
When something breaks, we notice. When it works, we don't. That's the fundamental imbalance.
What impressed me was how quickly the ecosystem adapted. Within days, plugin authors were updating specs. Alternative parser managers launched. A Neovim maintainer opened a discussion about upstreaming tree-sitter support into the editor proper. The collective response showed what's possible when people care.
But not every project gets this. Not every maintainer finds a replacement.
What you can do
If you're using any open-source tool, Neovim, LazyVim, a random npm package, or that one library that saved your project. Consider this: someone built it for you, for free, in their spare time.
A sponsorship, a contribution, or even a genuine thank-you can be the difference between someone burning out and sticking around. The software you depend on is held together by people's generosity. That's worth recognizing.


