DEV Community

Cover image for πŸš€ SnaxVim – A Minimal, Blazingly Fast Neovim Setup (Only 10 Plugins Included)
glmlm
glmlm

Posted on

πŸš€ SnaxVim – A Minimal, Blazingly Fast Neovim Setup (Only 10 Plugins Included)

Overview

SnaxVim is a minimal starting point for building your own Neovim setup. It’s aimed at those who want just the essentials for a fast, IDE-like experience β€” with a startup time that seems noticeably faster than many other distros I’ve tried.

It includes only 10 well-chosen plugins and avoids layers of abstraction, making it easier to learn and customise β€” similar in spirit to kickstart.nvim, but designed to be even more minimal and curated in its plugin selection.

πŸ”— GitHub: https://github.com/SnaxVim/SnaxVim

Gallery

Diagnostics and Completion

Debugging

Fuzzy Finder


My Journey to Neovim

Before I started using Neovim, I wasn't even aware of things like LSP or DAP. In VSCode, everything just worked as soon as I installed a few extensions, so I never had to think about how it all fit together. When I tried to turn Neovim into an IDE, I struggled to gather the necessary information. Fortunately, discovering the existence of Neovim Distros helped me a lot.

The Problem with Most Distros

However, when I tried to introduce Neovim to others, I ran into a different kind of problem.

Many Neovim Distros deploy their configurations in locations separate from the standard configuration directory. As a result, it's often difficult for beginners to tell whether a particular behaviour comes from Neovim itself or from customisations. On the other hand, there are setups like kickstart.nvim that are easy to follow, but the plugins they include tend to be somewhat excessive for the goal of providing just the minimum IDE-like functionality. In addition, their focus on beginner-friendliness often comes at the cost of performance.

I thought that a setup with a configuration that’s not hidden behind layers of abstraction, a minimal set of plugins to enable IDE-like functionality, and proper use of lazy-loading would be a useful starting point for people new to Neovim. But I wasn’t able to find anything like that, so I decided to create one myself β€” and that’s how SnaxVim was born.

Plugin Selection Philosophy

SnaxVim selects plugins based on two main criteria: they must be essential for an IDE-like setup and difficult for beginners to configure correctly on their own.

Some widely used plugins may meet the first criterion but not the second, and are therefore intentionally excluded. gitsigns.nvim is a good example: while it’s a common and practical tool for today’s development needs, it works reliably with minimal configuration β€” often just opts = {} β€” and provides immediate visual feedback when active, making it unlikely to cause confusion for beginners.

Currently, SnaxVim includes 10 plugins, and there are no plans to increase this number. However, I will continue to monitor the maintenance status and alternatives for each plugin and revise the lineup only if a better-maintained or more appropriate plugin emerges for the same purpose.

Try It Out

If you're interested in Neovim but unsure where to begin, or if you prefer configuring things yourself but would like to leave the selection and upkeep of essential plugins to the community, SnaxVim is intended to be a solid starting point.

πŸ”— GitHub: https://github.com/SnaxVim/SnaxVim

If you find it helpful, I’d appreciate a ⭐ on GitHub!

Top comments (2)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.

OSZAR »