Are you the proud owner of a closed source project on GitHub? Maybe you've been considering making it open source, but you're not sure where to start. Making the switch can seem daunting, but it's actually a great way to build a community around your project and get more eyes on your code. In this blog post, we'll go over the essential steps to convert your closed source GitHub project into an open source one.
Choose an Open Source License
The first step in making your project open source is choosing an open source license. An open source license allows others to use, modify, and distribute your code while still giving you credit as the original creator. There are many different open source licenses to choose from, each with their own terms and conditions. Some popular options include the MIT License, the Apache License, and the GNU General Public License (GPL).
Learn more about Open Source licenses below:
Update Your Codebase
Before making your project open source, it's important to ensure that your codebase is clean and organized. This means removing any proprietary code, refactoring code to make it more modular, and making sure that all dependencies are properly documented. This will make it easier for others to contribute to your project and understand how it works.
Adding tools like code linters, tests, and documentations will make your project easier to contribute to.
Create a Public Repository
Once you've chosen an open source license and updated your codebase, you're ready to create a public repository on GitHub. This will make your project visible to others and allow them to fork your code, make changes, and contribute back to the project.
If you already have an existing repository, you can simply convert it to public. Here's you do it:
Log in to your GitHub account and navigate to the repository you want to make public.
- Click on the "Settings" tab on the right side of the page.
- Scroll down to the "Danger Zone" section.
- Click on the "Make public" button.
- Confirm that you want to make the repository public by typing in the name of the repository.
- Click on the "I understand, make this repository public" button.
- Wait for GitHub to update the repository's status.
Add a README File
One of the most important parts of your open source project is the README file. This file should provide an overview of what your project does, how to install and use it, and any other important information that potential contributors should know. It's also a good idea to include a code of conduct in your README file to set expectations for how people should behave in your community.
One of many ways to make your README file more enticing is by adding few images, or logo of your project. You can be creative as much as you want.
Create an Issue Tracker
An issue tracker is a tool that allows you to track bugs, feature requests, and other issues related to your project. GitHub has an integrated issue tracker that you can use for your open source project. This will make it easy for others to report issues they encounter and for you to keep track of what needs to be fixed. Oftentimes the built-in issue tracking tool of GitHub is more than enough. You can make the experience easier by adding bots to manage the age and labels of the issues. You can also add bots to greet and thank issue contributors.
Set up Continuous Integration
Continuous Integration (CI) is the practice of automatically building and testing your code every time a change is made. This helps catch bugs and other issues early on, before they become bigger problems. There are many different CI tools you can use with GitHub, such as Travis CI or CircleCI. We personally recommend GitHub's workflow action as it is directly integrated with GitHub which gives you a lot of built-in options that will make your CI workflow smoother.
Now that your open source project is up and running, it's time to start building a community around it. One of the best ways to do this is by actively encouraging contributions from others. This can include things like making it easy for people to contribute, responding to issues and pull requests in a timely manner, and providing clear guidance on how to contribute to your project. Getting support from existing communities is also good way to gain contributors. In OSSPH we support all sorts of open source projects. Join us at https://ossph.org.
Converting your closed source GitHub project into an open source one is a great way to build a community around your code and get more eyes on it. By following these essential steps, you can ensure that your project is ready for others to contribute and help take it to the next level.
About the author
Joff Tiquez, hailing from Manila, Philippines, is the individual behind the establishment of OSSPH. He is a web developer who strongly supports open source and has been overseeing projects like Vue Stripe for an extended period. To get in touch with Joff, you can visit https://bento.me/jofftiquez.