Skip to main content

Finding ways to contribute to open source on GitHub

You can find ways to contribute to open source projects on GitHub that are relevant to you.

Discovering relevant projects

If there's a particular topic that interests you, visit github.com/topics/<topic>. For example, if you are interested in machine learning, you can find relevant projects and good first issues by visiting https://github.com/topics/machine-learning. You can browse popular topics by visiting Topics. You can also search for repositories that match a topic you're interested in. For more information, see "Searching for repositories."

If you've been active on GitHub, you can find personalized recommendations for projects and good first issues based on your past contributions, stars, and other activities in Explore GitHub.

Keep up with recent activity from repositories you watch, as well as people and organizations you follow, with your personal dashboard. For more information, see "About your personal dashboard."

You can connect with developers around the world to ask and answer questions, learn, and interact directly with GitHub staff. To get the conversation started, see "GitHub Community Support."

Finding good first issues

If you already know what project you want to work on, you can find beginner-friendly issues in that repository by visiting github.com/<owner>/<repository>/contribute. For an example, you can find ways to make your first contribution to electron/electron at https://github.com/electron/electron/contribute.

Opening an issue

If you encounter a bug in an open source project, check if the bug has already been reported. If the bug has not been reported, you can open an issue to report the bug according to the project's contribution guidelines.

Validating an issue or pull request

There are a variety of ways that you can contribute to open source projects.

Reproducing a reported bug

You can contribute to an open source project by validating an issue or adding additional context to an existing issue.

Testing a pull request

You can contribute to an open source project by merging a pull request into your local copy of the project and testing the changes. Add the outcome of your testing in a comment on the pull request.

Updating issues

You can contribute to an open source project by adding additional information to existing issues.

Further reading