Hacktoberfest, support and encourage open source contributions.

A month-long celebration of open source software.

Posted by Prem Singh on October 16, 2017

What is Hacktoberfest?

Hacktoberfest is celebration of open source software in partnership with DigitalOcean & Github. It’s a month-long celebration of open source software development by contributing code.

This way we support and encourage open source contribution. This is 4th annual Hacktoberfest.

It is open to everyone in community. You can earn a limited-edition Hacktoberfest T-shirt and stickers!

By participating in it you can learn how to contribute to open source, finding issues and making pull requests.

Project maintainers can also attract new participants for their projects.

This is my first time participating in Hactoberfest and i made 4 PR(Pull requests) to 4 different github repositories and they got merged successfully.

You can check your progress on hacktoberfest checker OR on official Hacktoberfest website.

My Hacktoberfest Progress

How can i participate?

  • Sign up here - official Hacktoberfest website. You can sign up anytime between October 1 and October 31.

  • You need to make four pull requests between October 1–31 in any timezone to any public repo on Github & pull request must contain commits you made yourself.

Steps to contribute?

Step 1 - Look for open issues on github repo

  • Look for open issues in github projects labeled as hacktoberfest here. Filter them by the programming language that you know.

  • Read the description in the issue to understand what needs to be done. It can be a bug fix, feature request or enhancement to the project.

  • If you don’t understand the description then you can ask repo maintainers questions on the issue.

    And Once you think you can work on the issue then comment that you would like to help in this issue. Make sure that the issue is open and is not taken by others.

Step 2 - Setup project locally

  • look for “contributing” header in Readme.md file OR read CONTRIBUTING.md file in repo which contains contribution guidelines.

  • Fork the repository on project web page by clicking the “Fork” Button in the upper right hand corner of the interface.

  • Clone the repo locally git clone https://github.com/{your-username}/{project-name}.git

  • Open git bash shell and then cd /{project-name}

  • Create a branch git checkout -b [name_of_your_new_branch]

Step 3 - Make changes in the code and push it

  • Code your files in proper directory based on instructions in CONTRIBUTING.md

  • Add all your files git add your/directory/path/to/file/

  • Commit your file changes git commit -m "Whatever you did here, e.g. beautified search bar"

  • Push your changes git push origin [new-branch-name] .

Step 4 - Make a Pull request

  • Now go to forked repo web page and you should see “make a pull request” button in green color. Click on it and create a pull request.

  • Now see whether it is having code conflicts or not, if there is then resolve them. Code conflicts can occur if many people made changes in the same part of the code.

    If there are no code conflicts then you will se green tick saying “This branch has no conflicts with the base branch”.

  • Congratulations you successfully made your pull request. Now the maintainers will review your code and merge it.

You need to have basic knowledge of git & if you don’t know check this tutorial here.

You don’t have to be an expert to contribute to the project. You can even find issues in Readme file for typo, broken links and updating it.

Search for issues with short phrases like easy, beginner, up for grabs and hacktoberfest. Pick the issue that you think you are comfortable in doing.

There are many hacktoberfest open issues on github in many programming languages.

Following is the list of links to projects for first timers:

There are still 15 days left in October. 15 days to earn a limited-edition Hacktoberfest T-shirt and to learn how to contribute to open source.

Did you find this article useful? Write your comments below.

If you found this article helpful, do share with your friends. Thank you :)

Premprakash Singh

Premprakash Singh

I’m a Software Developer from Mumbai, India. I am a learner who loves to code and learning new things. A freecodecamper, member of Chingu cohort as well (Bearded Dragon June cohort & Chingu-voyage cohort) and a newbie in open source development.