Skip to content

material-components/material-web

Folders and files

NameName
Last commit message
Last commit date
Nov 19, 2024
Feb 4, 2025
Mar 26, 2025
Aug 29, 2024
Feb 4, 2025
Sep 8, 2023
Mar 7, 2025
Jul 15, 2024
Jan 22, 2025
Jul 15, 2024
Sep 17, 2024
Sep 11, 2024
Jul 15, 2024
Jul 15, 2024
Feb 4, 2025
Jul 2, 2024
Dec 2, 2024
Jan 29, 2025
Feb 4, 2025
Jul 15, 2024
Jul 15, 2024
Sep 18, 2024
Jul 15, 2024
Nov 4, 2024
Oct 15, 2024
Jul 15, 2024
Sep 18, 2024
Jul 16, 2024
Aug 20, 2024
Mar 24, 2025
Jan 28, 2025
Mar 20, 2024
Nov 4, 2024
Mar 26, 2025
Mar 26, 2025
Dec 8, 2023
Dec 18, 2023
Feb 22, 2023
Jun 10, 2024
Dec 8, 2023
Oct 25, 2023
Jan 22, 2024
Oct 25, 2023
Mar 27, 2025
Mar 26, 2025
Jan 9, 2023
Jul 2, 2024
Feb 20, 2024

Material Web

A collection of Material web components

Published on npm Join our Discord Test status npm Downloads jsDelivr hits (npm)

@material/web is a library of web components that helps build beautiful and accessible web applications. It uses Material 3, the latest version of Google's open-source design system.

Note: MWC is in maintenance mode pending new maintainers.

Resources

Quick start

Tip: Using Angular? We recommend using Angular Material components instead.

This code snippet is a buildless example that loads @material/web from a CDN. Check out the quick start guide to install and build for production.

<head>
  <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap" rel="stylesheet">
  <script type="importmap">
    {
      "imports": {
        "@material/web/": "https://esm.run/@material/web/"
      }
    }
  </script>
  <script type="module">
    import '@material/web/all.js';
    import {styles as typescaleStyles} from '@material/web/typography/md-typescale-styles.js';

    document.adoptedStyleSheets.push(typescaleStyles.styleSheet);
  </script>
</head>
<body>
  <h1 class="md-typescale-display-medium">Hello Material!</h1>
  <form>
    <p class="md-typescale-body-medium">Check out these controls in a form!</p>
    <md-checkbox></md-checkbox>
    <div>
      <md-radio name="group"></md-radio>
      <md-radio name="group"></md-radio>
      <md-radio name="group"></md-radio>
    </div>

    <md-outlined-text-field label="Favorite color" value="Purple"></md-outlined-text-field>

    <md-outlined-button type="reset">Reset</md-outlined-button>
  </form>
  <style>
    form {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 16px;
    }
  </style>
</body>