Convert Figma logo to code with AI

freeCodeCamp logohow-to-contribute-to-open-source

A guide to contributing to open source

8,711
1,804
8,711
63

Top Related Projects

🚀✨ Help beginners to contribute to open source projects

A list of awesome beginners-friendly projects.

This is a list of projects which have curated tasks specifically for new contributors. These issues are a great way to get started with a project, or to help share the load of working on open source projects. Jump in!

:christmas_tree: Giving back to open source for the holidays

Quick Overview

The "how-to-contribute-to-open-source" repository by freeCodeCamp is a comprehensive guide for beginners looking to contribute to open-source projects. It provides resources, tips, and a curated list of beginner-friendly projects to help newcomers navigate the world of open-source contributions.

Pros

  • Extensive collection of resources for beginners
  • Regularly updated with new information and projects
  • Multilingual support, making it accessible to a global audience
  • Encourages community involvement and collaboration

Cons

  • May be overwhelming for absolute beginners due to the amount of information
  • Some listed projects or resources may become outdated over time
  • Focuses primarily on GitHub-based projects, potentially limiting exposure to other platforms
  • Lacks in-depth guidance for specific programming languages or frameworks

Getting Started

To get started with this resource:

  1. Visit the repository: https://github.com/freeCodeCamp/how-to-contribute-to-open-source
  2. Read through the README.md file for an overview of the project
  3. Explore the various sections, such as "Contributing to open source in general" and "Useful articles for new open source contributors"
  4. Check out the "Repositories to contribute to" section for beginner-friendly projects
  5. Join the Discord community for additional support and discussions

Note: This is not a code library, so there are no code examples or quick start instructions for implementation. Instead, it serves as a comprehensive guide and resource collection for those interested in contributing to open-source projects.

Competitor Comparisons

🚀✨ Help beginners to contribute to open source projects

Pros of first-contributions

  • More hands-on approach with step-by-step instructions for making a first contribution
  • Provides a practice repository for users to make their first pull request
  • Offers translations in multiple languages, making it accessible to a wider audience

Cons of first-contributions

  • Focuses primarily on GitHub-specific contributions, limiting exposure to other platforms
  • Less comprehensive in covering broader open-source concepts and best practices
  • May not provide as much depth for more experienced contributors looking to expand their skills

Code Comparison

first-contributions:

1. Fork this repository
2. Clone your forked repository
3. Create a branch
4. Make necessary changes and commit those changes
5. Push changes to GitHub

how-to-contribute-to-open-source:

- [ ] Follow the CONTRIBUTING.md of the project
- [ ] Make small and focused changes
- [ ] Write good commit messages
- [ ] Be patient and respectful
- [ ] Ask for help when needed

The code comparison shows that first-contributions provides more specific, step-by-step instructions for making a contribution, while how-to-contribute-to-open-source offers general guidelines and best practices for contributing to open-source projects.

Both repositories serve as valuable resources for newcomers to open-source contributions, with first-contributions offering a more practical, hands-on approach and how-to-contribute-to-open-source providing a broader overview of open-source contribution concepts and etiquette.

A list of awesome beginners-friendly projects.

Pros of awesome-for-beginners

  • Extensive list of beginner-friendly projects categorized by programming language
  • Direct links to specific issues or contribution guidelines for each project
  • Regularly updated with new projects and opportunities

Cons of awesome-for-beginners

  • Lacks detailed guidance on the contribution process
  • Minimal explanation of open source concepts and best practices
  • No interactive elements or community engagement features

Code Comparison

While both repositories are primarily documentation-based, awesome-for-beginners uses a simple markdown structure for listing projects:

## JavaScript

- [Leaflet](https://github.com/Leaflet/Leaflet/labels/good%20first%20issue) - JavaScript library for mobile-friendly interactive maps.

how-to-contribute-to-open-source includes more detailed markdown with nested lists and links:

## Useful articles for new open source contributors

- [How to choose (and contribute to) your first open source project](https://github.com/collections/choosing-projects)
  - [How to find your first open source bug to fix](https://www.freecodecamp.org/news/finding-your-first-open-source-project-or-bug-to-work-on-1712f651e5ba/)

Both repositories effectively use markdown to organize information, but how-to-contribute-to-open-source provides more comprehensive content and structure.

This is a list of projects which have curated tasks specifically for new contributors. These issues are a great way to get started with a project, or to help share the load of working on open source projects. Jump in!

Pros of up-for-grabs.net

  • Provides a curated list of projects actively seeking contributors
  • Offers a user-friendly web interface for browsing and filtering projects
  • Allows project maintainers to easily add their projects to the platform

Cons of up-for-grabs.net

  • Limited to projects that explicitly opt-in to the platform
  • May not provide as comprehensive guidance on open source contribution processes
  • Focuses primarily on project discovery rather than detailed contribution instructions

Code Comparison

how-to-contribute-to-open-source:

# How to Contribute to Open Source

This is a list of resources for people who are new to contributing to open source.

If you find additional resources, please contribute a pull request.

If you have questions or comments, please create an issue.

up-for-grabs.net:

name: up-for-grabs.net
desc: This is a list of projects which have curated tasks specifically for new contributors.
site: https://up-for-grabs.net
tags:
- oss
- web
upforgrabs:
  name: up-for-grabs
  link: https://github.com/up-for-grabs/up-for-grabs.net/labels/up-for-grabs

The how-to-contribute-to-open-source repository focuses on providing a comprehensive list of resources for new contributors, while up-for-grabs.net uses a YAML-based structure to define project metadata for its platform.

:christmas_tree: Giving back to open source for the holidays

Pros of 24pullrequests

  • Gamification aspect encourages consistent contributions during December
  • Provides a platform for project discovery and matching contributors with projects
  • Offers a more interactive and community-driven experience

Cons of 24pullrequests

  • Limited to a specific time frame (December), which may not suit all contributors
  • Focuses primarily on quantity of contributions rather than depth of learning
  • May not provide as comprehensive guidance for absolute beginners

Code Comparison

24pullrequests (Ruby on Rails):

def create
  @pull_request = current_user.pull_requests.create(pull_request_params)
  @pull_request.post_tweet if @pull_request.valid? && current_user.twitter_linked?
  redirect_to pull_requests_path
end

how-to-contribute-to-open-source (Markdown):

## Resources

### Tutorials
* [How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github)
* [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)

The 24pullrequests code snippet shows an action for creating pull requests, while how-to-contribute-to-open-source primarily consists of markdown content with links to resources. This reflects the different approaches of the two projects: 24pullrequests as an interactive platform and how-to-contribute-to-open-source as a curated guide.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Read this guide in other languages

Welcome Newbie Open Source Contributors!

Pull Requests Welcome first-timers-only Friendly Check Resources

This is a list of resources for people who are new to contributing to Open Source.

If you find additional resources, please create a pull request.

If you have questions or comments, please create an issue.

Table of Contents

Contributing to Open Source in general

Articles and resources that discuss the world and culture of Open Source.

Direct GitHub searches

Search links that point directly to suitable issues to contribute to on GitHub.

Mozilla's contributor ecosystem

Mozilla pledges for a healthy internet and with it, has opportunities to contribute to its open-source projects.

  • Good First Bugs - bugs that developers have identified as a good introduction to the project.
  • MDN Web Docs - help the MDN Web Docs team in documenting the web platform by fixing content issues and platform bugs.
  • Mentored Bugs - bugs that have a mentor assigned who will be there on IRC to help you when you get stuck while working on a fix.
  • Bugs Ahoy - a site dedicated to finding bugs on Bugzilla.
  • Firefox DevTools - a site dedicated to bugs filed for the developer tools in the Firefox browser.
  • Start Mozilla - a Twitter account that tweets about issues fit for contributors new to the Mozilla ecosystem.

Useful articles for new Open Source contributors

Helpful articles and blogs directed at new contributors on how to get started.

Using Version Control

Tutorials and resources of varying levels on using version control, typically Git and GitHub.

Open Source books

Books on all things Open Source: The Culture, History, Best Practices, etc.

  • Producing Open Source Software - Producing Open Source Software is a book about the human side of Open Source development. It describes how successful projects operate, the expectations of users and developers, and the culture of free software.
  • The Architecture of Open Source Applications - The authors of twenty-four open source applications explain how their software is structured, and why. From web servers and compilers to health record management systems, they are covered here to help you become a better developer.
  • Open Source Book Series - Learn more about Open Source and the growing Open Source movement with a comprehensive list of free eBooks from https://opensource.com.
  • Software Release Practice HOWTO - This HOWTO describes good release practices for Linux and other Open-Source projects. By following these practices, you will make it as easy as possible for users to build your code and use it, and for other developers to understand your code and cooperate with you to improve it.
  • Open Sources 2.0 : The Continuing Evolution (2005) - Open Sources 2.0 is a collection of insightful and thought-provoking essays from today's technology leaders that continues painting the evolutionary picture that developed in the 1999 book, Open Sources: Voices from the Revolution.
  • Open Sources: Voices from the Open Source Revolution - Essays from open-source pioneers such as Linus Torvalds (Linux), Larry Wall (Perl), and Richard Stallman (GNU).

Open Source contribution initiatives

List of initiatives that aggregate beginner friendly issues to work on or seasonal events.

  • Up For Grabs - Contains projects with beginner-friendly issues.
  • First Contributions - Make your first Open Source contribution in 5 minutes. A tool and tutorial to help beginners get started with contributions. Here is the GitHub source code for the site and opportunity to make a contribution to the repository itself.
  • First Timers Only - A list of bugs that are labelled "first-timers-only".
  • Hacktoberfest - A program to encourage Open Source contributions. Earn gifts like t-shirts and stickers by making at least 4 pull requests in the month of October.
  • 24 Pull Requests - 24 Pull Requests is a project to promote Open Source collaboration during the month of December.
  • Ovio - A platform with a curated selection of contributor-friendly projects. It has a powerful issue search tool and let's you save projects and issues for later.
  • Contribute-To-This-Project - This is a tutorial to help first-time contributors to participate in a simple and easy project and get comfortable in using GitHub.
  • Open Source Welcome Committee - The Open Source Welcome Committee (OSWC) helps newcomers join the extraordinary world of Open Source. Come submit your open-source projects with us!

Open Source programs to participate in

A program, internship, or fellowship hosted by a community to help match beginning contributors with mentors and resources to contribute to open source software projects.

License

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.