Skip to content

Latest commit

 

History

History
79 lines (50 loc) · 2.87 KB

File metadata and controls

79 lines (50 loc) · 2.87 KB

Contributing

First off, thanks for taking the time to contribute!

This project is a beginner-friendly Neovim starter config. Contributions that keep it simple, well-documented, and accessible to newcomers are always welcome.

Please read our Code of Conduct before participating.

How to contribute

Report a bug

Open a bug report.

Include:

  • Your Neovim version (nvim --version | head -1)
  • Operating system
  • Steps to reproduce
  • What you expected vs what happened

If the error is from a plugin (not the config itself), report it to the plugin author instead.

Suggest a feature

Open a feature request.

Check existing issues and discussions first — someone may have already suggested it.

Improve documentation

Typos, unclear explanations, or missing docs for common setups are all great fixes. See any *.md file in the repo.

Improve the config

Found a better default? A smarter keybinding? A plugin that's more stable or beginner-friendly than the current one? Open a pull request.

Development setup

# Clone the repo
git clone https://github.com/Mvzundert/nvim-starter.git
cd nvim-starter

# Test your changes without touching your real config
nvim -u init.lua somefile.py

You can also symlink the file to test day-to-day:

ln -sf "$(pwd)/init.lua" ~/.config/nvim/init.lua

Pull request guidelines

  • Keep it focused. One change per PR. A starter config should stay lean.
  • Stay single-file. The whole point is a single init.lua with comments.
  • Stay beginner-friendly. New features must be clearly commented. Assume the reader has never used Neovim.
  • Minimize plugins. Every new plugin adds maintenance cost and startup time. Ask yourself: is this essential for a beginner? If yes, prefer a stable, well-maintained option.
  • Test your changes. Run nvim -u init.lua and verify the feature works and nothing breaks.
  • Preserve the existing style. Indentation, comment style, and keybinding conventions should match.

Commit style

Write commit messages in the imperative mood:

Add guess-indent.nvim for auto-indent detection
Fix which-key timeout description
Update LSP server list in docs

First-time contributors

If this is your first PR ever, welcome! Feel free to tag @Mvzundert for help. Check issues labelled good first issue if you're looking for a place to start.

Need help?

See SUPPORT.md or start a GitHub Discussion.