Skip to content

Material Components for the web

Google's Material Design UI components for websites, as CSS and JavaScript modules. Archived.material-components/material-components-web

Stars
17k
Forks
2.1k
Licence
MIT
Language
TypeScript
Last update
1.8 years ago
Type
Library

This repository is archived and no longer maintained.

What it is

Material Components for the web is a set of ready-made user interface pieces, such as text fields, following Google's Material Design guidelines. Developers add them to websites or web apps, using either a CDN link or npm packages, and can customize colors, typography, and shape. The project is archived and the README says it is no longer actively maintained, so it receives no new features or planned bug fixes.

  • Add a styled text field to a static web page using the CDN link and a short HTML snippet
  • Install a single component such as @material/textfield with npm and initialize it in JavaScript
  • Customize Material theme colors, typography, and shapes through its Sass theming options
  • Browse the live demos in the component catalog to see examples before choosing components

Great for

  • Developers who want Material Design styling on a plain website without a large framework
  • Teams with an existing site who want consistent, customizable form and UI components
  • Developers who need components that work across several frameworks or none
  • Maintainers of legacy projects already built on this library

Not ideal for

  • New projects needing active support, since the README says the project is no longer actively maintained and updates may be turned off in the future
  • Angular users, because the README notes Angular Material moved away from this library
  • Teams wanting an actively developed Material library, since they should look at the newer Material Web project instead

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js (version not stated in the README) · webpack configured to compile Sass (for the npm route)

    Install the text field component via npm

    npm install @material/textfield
  2. 2

    Run it

    • Copy the CDN stylesheet and script links into an HTML page, or install the npm package
    • Add the text field markup from the quick start example to your page
    • Initialize the component with mdc.textField.MDCTextField.attachTo(...) for the CDN route, or new MDCTextField(...) for the npm route
    • Open the page in a browser to see the text field
  3. 3

    Get the most out of it

    • Use the Getting Started Guide for full setup instructions beyond the quick start
    • Browse the live demo catalog to find other components before installing them individually
    • Read the framework wrappers documentation if you use a major web framework
    • Check the supported browsers page before relying on it in production
    • Review the theming options in the component docs to match your brand

Downloads

Strengths

  • Modular: you install only the components you need, such as @material/textfield
  • Follows the Material Design guidelines and offers theming beyond color, including typography and shape
  • Works with plain HTML, CDN, npm, and several frameworks through documented wrappers

Trade-offs

  • Archived and no longer maintained, so bugs and browser changes will not be fixed by the team
  • The README notes breaking changes have been released monthly, so upgrades may require effort
  • Setting up the npm route assumes familiarity with webpack and Sass, which the README says is needed

How it compares

ProjectStarsTypeLevelUpdatedBest for
material-components-web (this)17kLibraryintermediate1.8 years agoDevelopers who want Material Design styling on a plain website without a large framework
bootstrap175kLibrarybeginner4 days agoDevelopers building responsive websites or web app interfaces quickly
mui13.5kFrameworkintermediate1.5 years agoDevelopers who want to build mobile-style web or hybrid app screens with HTML, CSS and JavaScript
materialize38.8kLibrarybeginner3 months agoDevelopers building a web page or app who want a Material Design look quickly
bootstrap-table11.8kLibrarybeginner7 days agoWeb developers already using Bootstrap who need sortable, paginated tables
parcel44kDev toolbeginner4 days agoWeb developers who want a bundler that works without a config file

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.