
Security News
CVE Volume Surges Past 48,000 in 2025 as WordPress Plugin Ecosystem Drives Growth
CVE disclosures hit a record 48,185 in 2025, driven largely by vulnerabilities in third-party WordPress plugins.
material-components-web
Advanced tools
Modular and customizable Material Design UI components for the web
This package contains the master library for Material Components Web. It simply wraps all of its sibling packages up into one comprehensive library for convenience.
npm install material-components-web
@use "material-components-web/material-components-web";
import * as mdc from 'material-components-web';
const checkbox = new mdc.checkbox.MDCCheckbox(document.querySelector('.mdc-checkbox'));
// OR
import {checkbox} from 'material-components-web';
const checkbox = new checkbox.MDCCheckbox(document.querySelector('.mdc-checkbox'));
See Importing the JS component for more information on how to import JavaScript.
NOTE: Since switch is a reserved word in JS, switch is instead named
switchControl.
NOTE: Built CSS files as well as UMD JS bundles will be available as part of the package.
The material-components-web package automatically registers all MDC Web components with
mdc-auto-init, making it dead simple to create and initialize components
with zero configuration or manual work.
For example, say you want to use an icon button toggle. Simply render the necessary
DOM, and attach the data-mdc-auto-init="MDCIconButtonToggle" attribute.
<button class="mdc-icon-button"
aria-label="Add to favorites"
aria-pressed="false"
data-mdc-auto-init="MDCIconButtonToggle">
<i class="material-icons mdc-icon-button__icon mdc-icon-button__icon--on">favorite</i>
<i class="material-icons mdc-icon-button__icon">favorite_border</i>
</button>
Then at the bottom of your html, insert this one-line script tag:
<script>mdc.autoInit()</script>
This will automatically initialize the icon button toggle, as well as any other components marked with the auto init data attribute. See mdc-auto-init for more info.
FAQs
Modular and customizable Material Design UI components for the web
The npm package material-components-web receives a total of 18,401 weekly downloads. As such, material-components-web popularity was classified as popular.
We found that material-components-web demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 15 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
CVE disclosures hit a record 48,185 in 2025, driven largely by vulnerabilities in third-party WordPress plugins.

Security News
Socket CEO Feross Aboukhadijeh joins Insecure Agents to discuss CVE remediation and why supply chain attacks require a different security approach.

Security News
Tailwind Labs laid off 75% of its engineering team after revenue dropped 80%, as LLMs redirect traffic away from documentation where developers discover paid products.