Third-party license information for Google Material Icons is not machine-detectable
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 99.1k
- Forks
- 32.5k
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 106
Description
I understand that @mui/icons-material is a library that is also intended to be
used in websites that are distributed statically.
In statically distributed websites, browsers access and render the distributed
artifacts directly (HTML / JavaScript / SVG, etc.).
From a licensing perspective, this is generally understood as “distribution
(or redistribution)” of the resulting artifacts.
Therefore, OSS and third-party materials included in the distributed artifacts
need to be organized and presented as third-party license information.
This affects not only MUI itself, but also downstream users who publish websites.
The README of @mui/icons-material includes the following statement:
"This package contains Google's Material Icons converted to Material UI SVG Icon components."
From this description, it is explicit that @mui/icons-material uses
Google Material Icons as its source material.
Google Material Icons are provided under the Apache License 2.0.
However, in the currently distributed @mui/icons-material package, it appears
that the following information is not included:
- The Apache-2.0 LICENSE text corresponding to Google Material Icons
- Machine-detectable information indicating the presence of third-party materials
As a result, downstream users who rely on common license collection tools,
SBOM generators, or CI-based automated checks may not be able to correctly
identify third-party license information by inspecting node_modules alone.
I believe there may be room to consider providing third-party material information
in a form other than README-only documentation.
Possible approaches could include, for example:
- Bundling the Apache-2.0 LICENSE text corresponding to Google Material Icons
- Explicitly listing third-party materials in a THIRD_PARTY_NOTICES / NOTICE file
- Providing third-party material information in a machine-readable form
Notes
- Google Material Icons themselves do not include a NOTICE file, so my understanding
is that only the Apache License 2.0 LICENSE text would need to be added. - I also considered managing Google Material Icons as a dependency, but since
Google Material Icons are not designed to be consumed as an npm dependency,
this approach does not seem practical.
Reference: https://github.com/google/material-design-icons/blob/master/LICENSE
Search keywords:
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the @mui/icons-material README and inspect the published package contents in node_modules, focusing on how its Google Material Icons source is documented. Check whether license collection or SBOM tools can detect the information; done means the distributed package includes the Apache-2.0 text and machine-detectable third-party material details.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100