Participation

Values

Everyone is welcome

Participants in Hacktoberfest come from all over the world and represent thousands of unique skill sets. We welcome everyone who’s already part of the open-source software community, and anyone who is interested in diving in.

Quantity is fun, quality is key

Participating in Hacktoberfest leads to personal growth, professional opportunities, and community building. But it all begins with meaningful contributions to open-source software. We’re committed to prioritizing quality contributions as outlined in our participation rules.

Short-term action, long-term impact

In the open-source community, we stand on the shoulders of project maintainers and those who came before us. Your participation has a lasting effect on people and technology long after October. Your participation helps build the future of the internet.

Contributors

Here’s what you need to know to participate and complete Hacktoberfest:

  • Register anytime between September 26 and October 31

  • Pull requests can be made in any GitHub or GitLab hosted project that’s participating in Hacktoberfest (look for the “hacktoberfest” topic)

  • Project maintainers must accept your pull/merge requests for them to count toward your total

  • Have 4 pull/merge requests accepted between October 1 and October 31 to complete Hacktoberfest

  • The first 40,000 participants (maintainers and contributors) who complete Hacktoberfest can elect to receive one of two prizes: a tree planted in their name, or the Hacktoberfest 2022 t-shirt.

Pull/Merge Request Details

Here’s how we validate contributor pull/merge requests (“PR/MRs”) for Hacktoberfest

[ out-of-bounds ]

Your PR/MRs must be within the bounds of Hacktoberfest.

Your PR/MRs must be created between October 1 and October 31 (in any time zone, UTC-12 thru UTC+14).

Your PR/MRs must be made to a public, unarchived repository.

[ excluded ]

Repos that go against Hacktoberfest’s values will be excluded from qualification and PR/MRs made to those repos won’t count.

Found a repository that goes against the values of Hacktoberfest? Let us know and we’ll take a look.

[ spam ]

Your PR/MRs must not be spammy.

PR/MRs that are labeled with a label containing the word “spam” by maintainers will not be counted.

  • We use the Node.js 16 RegEx engine with /\bspam\b/i to look for spam labels.

  • PR/MRs that also have the “hacktoberfest-accepted” label cannot be marked as spammy via a label.

  • PR/MRs that have been merged and do not have a label containing the word “invalid” cannot be marked as spammy via a label.

PR/MRs that our system detects as spammy will also not be counted.

Any user with two or more spammy PR/MRs will be disqualified.

[ participating ]

Your PR/MRs must be in a repo tagged with the “hacktoberfest” topic, or have the “hacktoberfest-accepted” label.

Hacktoberfest is now opt-in for maintainers, so only contribute to projects that indicate they’re looking for Hacktoberfest PR/MRs.

Once your PR/MR has passed this check, we won’t check this again (unless your PR/MR fails a check before this, such as it being marked as spammy).

[ invalid ]

Your PR/MRs must not be labeled as “invalid”.

PR/MRs that have a label containing the word “invalid” won’t be counted, unless they also have the “hacktoberfest-accepted” label.

  • Specifically, we use the Node.js 16 RegEx engine with /\binvalid\b/i to look for invalid labels.

[ accepted ]

Your PR/MRs must be merged, have the “hacktoberfest-accepted” label, or have an overall approving review.

Your PR/MR must not be a draft to be considered accepted.

If your PR/MR is being accepted for Hacktoberfest via an overall approving review it must also not be closed.

Once your PR/MRs pass all the checks above, it will be accepted for Hacktoberfest after the 7-day review period.

We continually evaluate all of the checks except the [participating] check. If it fails any of these checks during this time, the 7-day timer will reset.

After the 7-day review period completes, your PR/MR will be automatically accepted for Hacktoberfest assuming it still passes all the checks. Once accepted for Hacktoberfest, we stop checking. :party:

Measures to Reduce Spam

Spammy pull/merge requests will be labeled as “spam.”

Maintainers: label spammy requests “spam” and close them. PR/MRs labeled “spam” won’t count toward Hacktoberfest. Contributors with 2+ spammy PR/MRs are disqualified.

Pull/merge requests must be approved by a maintainer.

Maintainers accept PR/MRs by merging them, labeling them “hacktoberfest-accepted,” or giving them an overall approving review. Accepted PR/MRs enter a 7-day review window, during which approval can be revoked by the maintainer or by our team.

Bad repositories will be excluded.

PR/MRs should be useful to maintainers. Repos that encourage simplistic PR/MRs (like adding a name or profile to a list or arbitrarily curating content) will be excluded from Hacktoberfest. Remember: quantity is fun, quality is key.

Found a repository that you think doesn’t follow our values? Report it to us and we’ll take a look.

Avoid submitting low-quality pull/merge requests.

Hacktoberfest is about contributing meaningfully to open-source projects. Here are some examples of low-quality pull/merge requests that won’t count towards Hacktoberfest.

  • Automated pull/merge requests: scripted opening pull requests to remove whitespace, fix typos or optimize images.
  • Disruptive pull/merge requests: taking someone else’s branch/commits and making a pull request.
  • Anything that a project maintainer flags as spam.
  • Anything that looks like an attempt to duplicate your pull request count for October.

Multiple pull/merge requests for the same issue that are unnecessary -for example five PR/MRs to remove a stray whitespace is not.

Maintainers

Prepare your project for contributions by following these best practices:

  • Add the “hacktoberfest” topic to your repository to opt-in to Hacktoberfest and indicate you’re looking for contributions.

  • Apply the “hacktoberfest” label to issues you want contributors to help with in your GitHub or GitLab project.

  • Add a CONTRIBUTING.md file with contribution guidelines to your repository.

  • Choose issues that have a well-defined scope and are self-contained.

  • Adopt a code of conduct to create a greater sense of inclusion and community for contributors.

  • Be ready to review pull/merge requests, accepting those that are valid by merging them, leaving an overall approving review, or by adding the “hacktoberfest-accepted” label.

  • Reject any spammy requests you receive by labeling them as “spam,” and any other invalid contributions by closing them or labeling them as “invalid.”

Reward for Maintainers

The hard work of our Maintainers is the reason Hacktoberfest exists, so we want you to have the opportunity to receive your very own Hacktoberfest 2022 reward. In order to become eligible for the opportunity to win a Reward Kit all a Maintainer will have to do is complete four or more maintainer actions on unique PR/MRs in repos participating in Hacktoberfest. Here are the Maintainer actions that qualify:

  • Merge unique PR/MRs
  • Provide an approving review of a PR/MR
  • Add the “hacktoberfest-accepted” label
  • Add any label with the word “invalid” or “spam”

*Reward kits are limited; we will reach out to qualifying maintainers who are selected to receive a Reward Kit after Hacktoberfest ends.