Sachin Neravath

Sachin Neravath



I made over $65000 from an open-source project in 9 months. Everything you need to know about monetizing your open source project using dual licensing. 👇

1: What is Dual licensing? Dual licensing usually refers to licensing software under both a proprietary license and an open-source license, typically the GPL. When software is dual-licensed, recipients can choose which terms under which they want to obtain the software.

2: How does this work? According to the terms of the GPL, if you distribute a project that uses GPL licensed code, you need to - License the entire project under GPL. - Make source code available to the program's users.

GPL is even more restrictive when it comes to the client-side code. Using a GPL licensed JavaScript or CSS package on a website constitutes "distribution" of the package to the website visitors as they are transferred to and run on the client's machine.

So, anyone integrating the GPL licensed software into a proprietary product would have to violate GPL to distribute their product. And as an alternative option, users would have to obtain a commercial license to use the software as part of their commercial product.

3: Contributions. If you accept contributions from other developers, everyone who contributes to your project also becomes an exclusive copyright holder of their work. It is tricky when you relicense the contributions under a commercial license.

To ensure that you have all the necessary ownership to distribute the entire project under the commercial license, you need to get the Contributor License Agreement (CLA) signed by the contributors.

There are free tools like that helps you quickly set up CLA for your projects. Whenever someone submits a PR, A bot will comment on the PR, asking them to sign the CLA. Contributors need to log in with their GitHub accounts and sign the CLA.

4: Changing the existing licenses. As long as you are the only contributor, you can change the licenses without further problems. Otherwise, - You need to contact all contributors and ask for their permission - Or remove their contributions before switching to a new license

Once you relicense your project to GPL, the old version of the software released under the old license can still be used under the terms of the old license. But, this is usually not a problem as people purchase the commercial license primarily for future updates and support.

To prevent package managers like npm from automatically updating your package, make sure to release a major version when you change the license. Otherwise, unknowingly, your existing users will fall under a license breach.

When you relicense your project, it is good practice to do a major rewrite with a set of new features. This way, you can discourage people from using the older versions.

5: Examples. Dual licensing has been used as an open-source business model since the early 2000s. Companies like Oracle and Fedora follow the dual-licensing business model. But some of the examples you can relate to your projects are fullPage.js, isotope, introjs, etc.

6: Disclaimer. Please note that I am not a lawyer, and this is not legal advice. All the above information is based on online research and my personal experience. If you need any help monetizing your open-source project, please DM me. I'll try to help you as much as I can.

Follow us on Twitter

to be informed of the latest developments and updates!

You can easily use to @tivitikothread bot for create more readable thread!
Donate 💲

You can keep this app free of charge by supporting 😊

for server charges...