logo

Licenses Made Easy

Support

Why do we use licenses?

Public repositories are used to share your software to the world. Without a license, your repository is copyrighted and not open-source by default. For your repository to truly be open-source, you have to license it so it can be used, modified, and distributed by others.

Ranking System

Licenses are ranked under two categories: strictness and popularity.

Strictness Ranking

Strictness refers to how many requirements are needed to use a license. The strictness of a license is based on how many points it has.
Conditions are 15 points each and Limitations are 5 points each.

1 being the most strict, and 14 being the least strict.

Popularity Ranking

Popularity refers to how common the license is.

1 being the most popular, and 14 being the least popular.

Relevant Terms

Use or Private Use?

“Use” or “Private Use” means running and interacting with the software on your computer. When you use a software, you test its text-inputs, buttons, and functionalities. If the repository is public, anyone can use the software as intended.


Modify

“Modify” means making changes, additions, or deletions to the original code. This can involve fixing bugs, adding new features, installing and updating packages, or migrating frameworks.


Distribute

Distributing means sharing the software to others. This can be done privately (e.g. with a friend) or publicly (e.g. on a public domain). Distribution methods include USB drives, SD cards, DVDs, Dropbox, email, and more.


Distribute commercially

Distributing commercially means sharing or selling the software to others for money. It can be offering the software as a service or selling it. Example: Steam selling video games on their platform is a form of commercial distribution.


License and copyright notice

The license, usually found as the “LICENSE” or “LICENSE.txt” file, declares the permissions and restrictions regarding the use, modification, and distribution of the software. The copyright notice includes the copyright symbol ©, the year of publication, and the name of the copyright holder. It protects the code by informing others about the original author.


Condition

A condition is a requirement that the user must comply with to use, modify, or distribute the software. If the user does not comply with the license conditions, the user will lose the rights granted by the license.


Limitation

A limitation specifies the constraints of the software, indicating what the user cannot do with it.


Sublicense

A sublicense is a secondary license given to another party, allowing the user to use, modify, or distribute software based on terms different from the primary license.


Compatibility

Compatibility is the ability to combine code under multiple licenses without violating any guidelines.


Liability

Liabilities are the legal consequences for actions or damages by the software. Example: A software developer being held responsible for damages caused by data leaks.


Warranty

A warranty is an assurance about the software’s quality, features, and performance. It represents the promises made to the user regarding what the software will do. Example: YouTube’s warranty assures its users that they can upload videos to their platform as long as they adhere to their guidelines.


Trademark

A trademark is a unique symbol, brand, or logo that represents the software. Trademark licenses are permissions granted by the owner, allowing another party to use the trademark in their own code. This allows other parties to show how they are related to a brand. Example: Microsoft and OpenAI have trademark policies to safeguard their trademarks.



Please note that I am not a lawyer nor a legal representative. For legal advice, seek a lawyer or read official documentation.


Research Document

Here is the research I made to determine the strictness and popularity of each GitHub License. I used numerous trustworthy sources to back up my decisions.

For fellow developers, by DaviZCodes

If you're interested in adding more features, please raise a pull request.