Discovering OpenSource Projects

Discovering OpenSource Projects

ยท

6 min read

TL;DR: By the end of this blog, you'll have mastered how to find and contribute to Opensource projects of your choice, be it code or non-code contributions.

A brief about Opensource

OpenSource project is like a big puzzle that lots of people can work on together. When you work on the puzzle, you can see all the pieces and you can move them around to make the picture better. Everyone who works on the puzzle can share their ideas and make the picture better together.

Pre-requisites

  • A basic understanding of Git & GitHub.

  • Knowledge of the tech that you want to contribute to.

  • A cool mind.

Find the best project for you

Considering that you are already familiar with the stuff mentioned in the prerequisites then we should go ahead and discover our next OpenSource project to contribute to.

GitHub Topics

The easiest way to find projects is by looking at the different topics, and projects that are already listed in GitHub Topics. The best thing about this is, you will get a lot of popular topics in a sorted manner. You can star as many as you like to follow them.

Once you click on a Topic, it takes you to the page where there will be millions of projects that consist of that topic/technology. You can select any project you like & contribute to it. These projects can vary in size from huge to small.

Online Tools

Using online tools, like Good first issue to find issues & projects to contribute to has become a pretty popular technique these days amongst contributors. These tools basically will list down and track some projects, and display good first issues what essentially are the issues that are made for beginners to get their hands on with Opensource contribution.

The "not so good" part about them is the projects that are listed can be inactive, and a lot of times some projects are also "spam". So the contributors need to take a good look at the project before hopping in to contribute. Other than that, these tools are pretty handy and definitely save a lot of time for absolute beginners!

GitHub's advanced search is a great way to search through GitHub - finding issues by their labels, repositories, codes, pull requests, discussions, and whatnot.

The best part about it is we get to have different prefixes/options for whatever we want to search for. We will be focused on finding projects so,

  • First, select the language that you want to find projects in, I chose JavaScript .

  • Next, you can add a custom amount of stars & forks, which I gave <300 which finds me all the repos which have a star/fork less 300.

  • These custom stars and forks just help me identify a "level" of the project, and since there are a good number of forks, chances are that the project won't be inactive.

On the search page, we also do have Issue options which let us customize and search through all the issues that are there.

  • The In the state option lets you choose what type of issue are you searching for, whether it's a closed one or an open one.

  • The With the labels option is also important as it helps you filter through issue labels like good first issue , help wanted , bug, and so on. You can always play with these.

On searching you are then taken to the results page where you can take a look at different issues, repos, and code and also sort them differently via Best match , Recently updated and so on.

Overall, the GitHub Advanced search can be your favorite playground to find projects, code, issues, and PRs - provided that you spend a few minutes playing with it until you get the best results.

Connection, Collaboration

A lot of times whenever you connect with people they have their own OpenSource project and you can actually go ahead and collaborate with them and finally contribute to their OpenSource projects too.

There is a huge advantage to this method and that is since you already know who the maintainers are, reaching out to them will be easier. Plus whenever you'll face problems, you can connect with the owners of the project, and perhaps collaborate with them to solve the issues.

Exploring the community

GitHub has a dedicated explore tab - where based on your interests, public contributions, stars, and much more - you get to see a variety of projects, some trending repos & developers. Whenever you have time, do go through these as there might be projects you fall in love with !

Sometimes directly looking for isn't the answer at all - rather looking around a bit, and also check out some amazing Opensource Communities like EddieHub, AskDevs & many more can help you find other amazing projects too.

A must-follow contribution rule

Though this article is about discovering your OpenSource project, I would also like to talk about some contribution rules that one must follow whenever contributing to any OpenSource project.

Do's

  • Stick to one project. Don't go hopping around thousands of projects at the very same time instead get your hands on one particular project that you like and understand how it works and once you are comfortable contribute to it.

  • Read the docs. The majority of the Opensource projects will have proper guidelines/documentation/code of conduct and so on. Do give those a read as they will tell you how to contribute to the project & other important stuff.

  • Patience. Whenever you are contributing, the one thing to have is patience, because Good things, take time.

Don'ts

  • Spams. Do not try & contribute spammy changes to a project - like changing spaces, adding random text & so on. These might affect your OSS contributions.

  • Unnecessary tags. If you have made a PR, do wait. Maintainers have a separate life, job, family & other things to look after too - so your changes might not be reviewed instantly.

Conclusion

So we have talked about a lot of ways to find projects & contribute to OpenSource & now the only thing that remains is for you to go ahead and spend some time contributing. There might be a lot more ways to find a project, but I'll leave that for you to find out as time passes!

Remember it might be tough at the very start, but as time flows it'll be a smooth process. Never lose hope, happy contributing ๐Ÿ”ฅ.

Wanna hear more, click the image below ๐Ÿ‘‡๐Ÿ‘‡

Did you find this article valuable?

Support Tamal Das by becoming a sponsor. Any amount is appreciated!

ย