Useful resources for a dev looking to contribute

Hello,

As a software engineer who uses neovim everyday (thanks for that, BTW), I’d like to be able to contribute to the source code itself, but recognize I’d likely need to brush up on my C first. I basically have 2 goals:

  1. Contribute to the tool I’m building a career on
  2. Understand the underlying code at a deeper level, so I can use the tool more effectively

Are there any good resources you can recommend? Is this even where I should be focusing? Is there a need for non-code work, documentation, testing, etc?

Thanks in advance

I’m one of the new(er) active contributors to neovim. The way I got started was by encountering/getting annoyed by bugs and fixing them. I didn’t really have any direct mentorship (at first), I just started digging through the lua code.

I think this is the best way to get started contributing to neovim, encounter bugs in your own work and then dig into why these occur. Much of neovim functionality is rooted in lua, so you can go a long ways without ever touching any C.

Alternatively, we do really need web developers interested in overhauling the website/documentation.

1 Like

Thanks for the quick response!

That’s good to know that there’s a lot of Lua code I could jump into and a fair point that I could always fork it to scratch my own itch. I guess I just wanted to make sure I was actually contributing useful changes, but seems hard to go too wrong if I’m doing bug fixes for open issues.

I’ve found porting vim patches to be a pretty good way to get to know the (gnarly) code base. Hop on gitter or so to get help choosing the right one, to not duplicate work or port something that’s not needed.