This issue tracks updating the licensing across the metamask-design-system monorepo and improving the create-package script to reflect the updated licensing requirements for open-source projects.
Context
Legal has recommended using the following dual licensing model for open-source projects:
"MIT OR Apache 2.0"
An example of this licensing setup can be found in the auto-changelog project, including:
The dual-license entry in package.json.
The inclusion of two license files in the repository root: LICENSE-MIT and LICENSE-APACHE.
Requirements
Update the create-package script's module template to use this new licensing model.
Update all existing license information in the monorepo to conform to the new licensing model.
Technical Details
Step 1: Update create-package Script
Modify the create-package script to:
Add "license": "MIT OR Apache-2.0" to the generated package.json files.
Include two license files in the package:
LICENSE-MIT
LICENSE-APACHE
Ensure these changes propagate correctly for any newly created packages.
Step 2: Update Existing Packages
Update all package.json files across the monorepo to include "license": "MIT OR Apache-2.0".
Add the LICENSE-MIT and LICENSE-APACHE files to the root of the monorepo.
Remove any existing licenses or references that conflict with this new dual-licensing model.
Step 3: Documentation
Update relevant README files to explain the dual-licensing model, following the example in the auto-changelog project.
Add a note in the create-package documentation to highlight the new licensing model for future maintainers.
Acceptance Criteria
The create-package script generates packages with:
"license": "MIT OR Apache-2.0" in package.json.
Both LICENSE-MIT and LICENSE-APACHE files included.
All existing packages in the metamask-design-system monorepo are updated with the new dual-license model.
Licensing files in the monorepo root are consistent with the auto-changelog example.
Documentation is updated to reflect the licensing changes.
Description
This issue tracks updating the licensing across the
metamask-design-system
monorepo and improving thecreate-package
script to reflect the updated licensing requirements for open-source projects.Context
auto-changelog
project, including:package.json
.LICENSE-MIT
andLICENSE-APACHE
.Requirements
create-package
script's module template to use this new licensing model.Technical Details
Step 1: Update
create-package
Scriptcreate-package
script to:"license": "MIT OR Apache-2.0"
to the generatedpackage.json
files.LICENSE-MIT
LICENSE-APACHE
Step 2: Update Existing Packages
package.json
files across the monorepo to include"license": "MIT OR Apache-2.0"
.LICENSE-MIT
andLICENSE-APACHE
files to the root of the monorepo.Step 3: Documentation
auto-changelog
project.create-package
documentation to highlight the new licensing model for future maintainers.Acceptance Criteria
create-package
script generates packages with:"license": "MIT OR Apache-2.0"
inpackage.json
.LICENSE-MIT
andLICENSE-APACHE
files included.metamask-design-system
monorepo are updated with the new dual-license model.auto-changelog
example.References
auto-changelog