Fundamentals 7 min read

Overview of Common Open Source Licenses and Their Key Permissions

This article introduces several popular open‑source licenses—including Apache 2.0, GPL v3, MIT, BSD, Eclipse, and others—detailing their commercial use rights, required notices, modification obligations, patent provisions, and liability limitations to help developers choose an appropriate license.

System Architect Go
System Architect Go
System Architect Go
Overview of Common Open Source Licenses and Their Key Permissions

When creating a repository on GitHub or initializing a package.json file, you are asked to provide a license. A license is a legally binding permission notice, but because it is not mandatory, many developers overlook it. This article introduces several common open‑source licenses.

Apache License 2.0

Allows commercial use, sale, modification, private use, and patent use.

Requires a license and copyright notice and must indicate any modifications.

Includes a liability disclaimer, prohibits trademark use, and provides no warranty.

GNU General Public License v3.0

Allows commercial use, sale, modification, private use, and patent use.

After use, the source must be released under the same license with a notice and must retain the license and copyright statements.

Includes a liability disclaimer and provides no warranty.

MIT License

Allows commercial use, sale, modification, and private use.

Requires a license and copyright notice.

Includes a liability disclaimer and provides no warranty.

BSD 2‑clause "Simplified" License

Allows commercial use, sale, modification, and private use.

Requires a license and copyright notice.

Includes a liability disclaimer and provides no warranty.

BSD 3‑clause "New" or "Revised" License

Allows commercial use, sale, modification, and private use.

Requires a license and copyright notice.

Includes a liability disclaimer and provides no warranty.

Eclipse Public License 1.0

Allows commercial use, sale, modification, private use, and patent use.

After use, the source must be released under the same license with a notice and copyright statement.

Includes a liability disclaimer and provides no warranty.

GNU Affero General Public License v3.0

Allows commercial use, sale, modification, private use, and patent use.

After use, the source must be released under the same license with a notice, copyright statement, and must indicate modifications; network users can obtain a copy of the source.

Includes a liability disclaimer and provides no warranty.

GNU General Public License v2.0

Allows commercial use, sale, modification, and private use.

After use, the source must be released under the same license with a notice, copyright statement, and must indicate modifications.

Includes a liability disclaimer and provides no warranty.

GNU Lesser General Public License v2.1

Allows commercial use, sale, modification, and private use.

After use, the source must be released under the same license with a notice, copyright statement, and must indicate modifications.

Includes a liability disclaimer and provides no warranty.

GNU Lesser General Public License v3.0

Allows commercial use, sale, modification, private use, and patent use.

After use, the source must be released under the same license with a notice and must indicate modifications.

Includes a liability disclaimer and provides no warranty.

Mozilla Public License 2.0

Allows commercial use, sale, modification, private use, and patent use.

After use, the source must be released under the same license with a notice and copyright statement.

Includes a liability disclaimer, prohibits trademark use, and provides no warranty.

The Unlicense

Allows commercial use, sale, modification, and private use.

Includes a liability disclaimer and provides no warranty.

All of the licenses above grant permissions such as commercial use, sale, modification, and private use, and they all contain liability disclaimers without warranty, meaning you cannot hold the author responsible for any issues that arise from using the code.

If you want a permissive license, MIT is the most widely used; if you need users to indicate modifications, consider Apache License 2.0; and if you also want them to keep the same license, choose a GPL family license such as GNU GPL v3.0.

open sourceApacheGPLBSDMITsoftware license
System Architect Go
Written by

System Architect Go

Programming, architecture, application development, message queues, middleware, databases, containerization, big data, image processing, machine learning, AI, personal growth.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.