dephell generate license

Add LICENSE file in the project. This command gets the license name as input, downloads license template, substitutes current year and current system user name and saves result into LICENSE file.

$ dephell generate license MIT
$ dephell generate license --owner="Your Company Name" Apache-2.0

Which license should I choose

For open source software use MIT License. For proprietary software pay to a lawyer to help you make right choose in your case. You can discover other licenses on the, but all of them has some limitations in real world that can harm your project:

  1. Apache 2.0 cool license, but requires you to insert license notice at the beginning of every source code file in the project. Also, Apache 2.0 requires all contributors to track all changes in a special file (usually named CHANGELOG). It takes some time that you can spendmore effective. There are some special tools that allow you to generate CHANGELOG and insert copyright notice in source files, but so.
  2. GNU GPLv3 forbid to use your project in proprietary projects. It useful when you want to make open source only for open source, but really limit your project popularity and usage. Almost all developers writes some proprietary software, and only a bit dvelopers get paid for open source. So, don’t forbid your users to use your code.
  3. The Unlicense and WTFPL have limitations on usage in some countries. Don’t use them.
  4. Most of your users don’t know about other licenses like Mozilla Public License. Don’t force them to read about new licenses specially for your project. Please, value their time.

See also

  1. dephell deps licenses to show licenses for all project dependencies.
  2. dephell generate authors to make AUTHORS file for project.