๐ Open Source & Licensing¶
How to contribute, how to license, how open source actually works.
Understanding Licenses¶
| License | Type | Key Rule | Link |
|---|---|---|---|
| MIT | Permissive | Do anything, keep copyright notice | opensource.org/licenses/MIT |
| Apache 2.0 | Permissive | Patent grant included | apache.org/licenses/LICENSE-2.0 |
| GPL v3 | Copyleft | Derivatives must also be GPL | gnu.org/licenses/gpl-3.0 |
| LGPL | Weak copyleft | Can link without GPL-ing your code | gnu.org/licenses/lgpl-3.0 |
| BSD 2/3-Clause | Permissive | Minimal restrictions | opensource.org/licenses/BSD-2-Clause |
| MPL 2.0 | File-level copyleft | Modified files must stay MPL | mozilla.org/en-US/MPL/2.0 |
| Unlicense | Public domain | No restrictions at all | unlicense.org |
Choose a license: choosealicense.com
Contributing to Open Source¶
| Resource | Link |
|---|---|
| First Contributions | github.com/firstcontributions/first-contributions |
| Good First Issues | goodfirstissues.com |
| Up For Grabs | up-for-grabs.net |
| How to Contribute (GitHub Guide) | opensource.guide |
| Google Summer of Code | summerofcode.withgoogle.com |
Open Source Software Distribution¶
| Tool | Use | Link |
|---|---|---|
| GitHub Releases | Binary distribution | docs.github.com/en/repositories/releasing-projects |
| Homebrew | macOS/Linux packages | brew.sh |
| Snap | Linux sandboxed apps | snapcraft.io |
| Flatpak | Linux sandboxed apps | flatpak.org |
| AppImage | Portable Linux apps | appimage.org |
| Conan | C/C++ packages | conan.io |
| PyPI | Python packages | pypi.org |
| crates.io | Rust packages | crates.io |
| npm | JavaScript packages | npmjs.com |
Cross-references: Career Growth ยท Starred Repos