Software Licenses#

Before publishing your software, you need to add a license to your software. Adding a license to your software is a crucial step to define how others can use, modify, and distribute your software. This can be done by creating a file called LICENSE.md in the root directory of your repository. The file should contain the license text.

Which License to choose?#

You can find a list of licenses on https://choosealicense.com/. This site also provides a nice guide to help you choose a license.

We suggest to use GNU General Public License v3.0 or later for your software. You can copy the license text from here. One distinctive feature of the GPLv3 is its copyleft provision. This provision requires any derivative works or modifications of your software to also be distributed under the terms of the GPLv3. This helps to prevent the software from being turned into a proprietary product.

If you want to publish your software “as free as possible”, you can use the MIT License. The MIT License is a permissive free software license originating at the Massachusetts Institute of Technology and even allows reuse within proprietary software. You can copy the license text from here.

My project is not a software project#

When you want to license for non-software projects, you can use the Creative Commons licenses. You can find a list of licenses here. We suggest to use the CC BY 4.0 license. You can copy the license text from here.

Advanced: Check REUSE compliance#

Is my project REUSE compliant? You can check it with the REUSE helper. The REUSE helper is a tool that helps you to add the necessary information to your project to make it REUSE compliant. It also checks if your project is already REUSE compliant. You can find the documentation here.