DEV Community

Cover image for How to find πŸ”Ž an Open Source project to contribute to
Leonardo Montini for This is Learning

Posted on • Edited on • Originally published at leonardomontini.dev

How to find πŸ”Ž an Open Source project to contribute to

You can find a video version of this article on my YouTube Channel.

Introduction

Welcome! You clicked on this post because you want to contribute to Open Source, but you need some help in finding the right project, correct? Keep reading for a few minutes and you'll get some insights that will probably help you a little bit πŸ˜‰

A common obstacle to overcome is finding the right project but don’t worry, happens to most of us. Everything that comes to your mind is either a huge project and you have no idea where to begin, or some dead projects without a maintainer or guidance on how to help.

Opensource Guide

The first step is looking at this cool resource called opensource.guide

The name is pretty much self explanatory, this website will introduce you the main principles of the Open Source world. Don’t expect to immediately become an expert, there are a lot of concepts to understand and it will take time.

Read carefully the content here as it will provide you with a useful insight that you will find handy, to move quicker throughout the following steps.

In case you’re still wondering why you should contribute, there are plenty of benefits and good reasons, so many that I actually made an entire video on that.

Known projects

Once you’ve got some good motivation and you understood the basics, I suppose you want to get started but you have no idea where to begin.

Finding a valid project to contribute to might be quite difficult, that’s why I want to help you with some advices based on my own experience.

The best way, at least for me, is to think about the software you already use on a daily basis. Open up package.json or the dependency list of the projects you’re working at and you will find some amazing hints.

Some of the software you use everyday or the websites you visit might be Open Source as well, try to find the GitHub logo somewhere or directly do a quick search on GitHub itself.

In my case, I use vscode as editor and I found reasonable to put that project in the list of potential repositories to contribute at.

Good First Issue & Help Wanted

A common way to find a project, potentially one that you don’t even know, is by going backward and searching from issues rather than from projects directly.

Maintainers looking for contributors usually add labels to some issues to manifest their interest in having public contributions. The most used lables are good first issue, help wanted and up for grabs.

If you already have a project in mind, look carefully at issues with those lables.

In case you still need a project, there are some services that use lables on issues to collect repositories.

Some of the most known are:

Those services usually give you some extra insights such as the amount of open issues and also let you filter by language, for example Typescript or Python.

To be honest I’m not a fan of this approach as I think you need a deep knowledge of the project before writing some code for it. Anyway, those websites are quite common so I wanted to mention it. Maybe they will work well for you!

How to contribute

Once you found a project that feels right for you, there are still a few steps to take before being 100% able to contribute effectively, for example finding the right issue that addresses a specific change to apply in the code. I'm writing the script of a video specifically on this topic that I'll post on my YouTube Channel. Feel free to add a comment here if you have some extra advices and I'll include them!

If you're still unsure on how the PR mechanism works and you want to see a quick guide on that, you can read my other article:

Do you have some advices for other developers at the beginning of their Open Source journey? Write a comment here and let’s share some knowledge, thank you very much!


Thanks for reading this post, I hope you find it interesting!

You can also follow me on your favourite platform!

Tweets Videos
Twitter YouTube

Top comments (3)

Collapse
 
dvalin99 profile image
Domenico Tenace • Edited

Nice article, thank you @balastrong!
Open Source is a beautiful but large world and sometimes the choose of a project for contribute is difficult.

Some people don't contribute even for fear of critics or not being good enough.
I think is normal.

Thank you also for the resources tha you linked!

Collapse
 
balastrong profile image
Leonardo Montini

Thank you Domenico!

Having our code reviewed by the maintainers of the projects we contribute to is actually a gift! They can help us looking at the code we wrote from different points of view :D

Sure, sometimes we might disagree, but as long as everyone is polite it's a win even if the PR gets rejected :)

Collapse
 
dvalin99 profile image
Domenico Tenace

It possible learn from our errors, always!