@ovyerus/licenses

List of SPDX licenses with predictable placeholders

Usage no npm install needed!

<script type="module">
  import ovyerusLicenses from 'https://cdn.skypack.dev/@ovyerus/licenses';
</script>

README

licenses Build Status

List of SPDX licenses with predictable placeholder strings for copyright info.

This is a fork of spdx-license-list with added placeholders in the copyright strings (of most of the licenses) to make it easy for machines to create licenses with user-given info.

Some licenses are skipped due to being overly specific for that particular product or company, however most generic, OSI-approved licenses should have them just fine.

(If you want to add support for a license that hasn't received placeholders yet, feel free to submit a PR 😃)

The lists of licenses are just JSON files and can be used anywhere.

Using SPDX License List version 3.8 (2020-02-09)

The placeholders in the text are in the format of <placeholder name>, so for example, Copyright (c) 2002 John Doe would become Copyright (c) <year> <author>

Install

$ npm install @ovyerus/licenses

Usage

const spdxLicenseList = require('@ovyerus/licenses');

console.log(spdxLicenseList.MIT);
/*
{
    name: 'MIT License',
    url: 'http://www.opensource.org/licenses/MIT',
    osiApproved: true
}
*/
const mitLicense = require('@ovyerus/licenses/licenses/MIT');

console.log(mitLicense.licenseText);
//=> 'MIT License\r\n\r\nCopyright (c) <year> <copyright holders> …'

You can also get a version with the licence text included:

const spdxLicenseList = require('@ovyerus/licenses/full');

console.log(spdxLicenseList.MIT);
/*
{
    name: 'MIT License',
    url: 'http://www.opensource.org/licenses/MIT',
    osiApproved: true,
    licenseText: '…'
}
*/

Or just the license IDs as a Set:

const spdxLicenseList = require('@ovyerus/licenses/simple');

console.log(spdxLicenseList);
//=> Set {'Glide', 'Abstyles', …}

API

spdxLicenseList

Type: Object

The licenses are indexed by their identifier and contains a name property with the full name of the license, url with the URL to the license, and osiApproved boolean for whether the license is OSI Approved.