npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

material-inspired-component-library

v8.0.0

Published

The Material-Inspired Component Library (MICL) offers a collection of beautifully crafted components leveraging native HTML markup, designed to align with the Material Design 3 guidelines.

Readme

Material-Inspired Component Library (MICL)

The Material-Inspired Component Library (MICL) offers a free and open-source collection of beautifully crafted components leveraging native HTML markup, designed to align with the Material Design 3 guidelines. MICL prioritizes minimal HTML markup and often requires no JavaScript, making it a lightweight and efficient choice for your projects.

Why Choose MICL?

  • Embrace Material Design 3: Seamlessly integrate the aesthetic and user experience principles of Material Design into your web pages and applications.
  • Lightweight & Efficient: Benefit from components built with straightforward HTML and minimal to no JavaScript, ensuring fast loading times and a streamlined development process.
  • Effortless Dark Mode: Enjoy out-of-the-box support for both light and dark modes, automatically adapting to your defined color scheme.

Why Might MICL Not Be for You?

  • Heavy JavaScript Dependencies: If your project heavily relies on a JavaScript framework for component interaction, MICL's minimalist approach might not be the best fit.
  • Bootstrap Preference: Users deeply integrated with or preferring the Bootstrap CSS framework may find MICL's distinct design philosophy less suitable.
  • Legacy Browser Support: MICL is designed for modern browsers, and comprehensive support for older browser versions is not a primary focus.

Demo & Documentation 📖

Explore the components in a live environment and see how they work.

Quick start 🚀

1. Install via NPM

npm install material-inspired-component-library

2. Add the CSS

Sass/SCSS

To import the styles for a single component (e.g., the Card component):

@use "material-inspired-component-library/dist/card";

To import all MICL styles:

@use "material-inspired-component-library/styles";

Remember to import your theme file as well:

@use "path/to/mytheme";

Plain CSS

Copy the main micl.css file to your distribution folder and include it in your application. Include your theme file as well:

<link rel="stylesheet" type="text/css" href="path/to/dist/mytheme.css">
<link rel="stylesheet" type="text/css" href="path/to/dist/micl.css">

The main MICL CSS file can also be found on CDN networks, like on jsDelivr: https://cdn.jsdelivr.net/npm/material-inspired-component-library/dist/micl.css

3. Add the HTML & JavaScript

Here is a simple example of a Card component.

<div class="micl-card-outlined">
  <img src="your-image.jpg" alt="A beautiful image" class="micl-card__image">
  <div class="micl-card__headline-s">
    <h2>Card Title</h2>
  </div>
  <p class="micl-card__supporting-text">This is a simple card component.</p>
</div>

Some components, like the List, require a small amount of JavaScript to handle interactive behaviour. Because the JavaScript footprint in MICL is so small, you can import the code for all components at once.

import micl from "material-inspired-component-library/dist/micl";

This will initialize all MICL components, including those that will be added to the DOM later on.

Plain JavaScript

Copy the main micl.js file to your distribution folder and include it in your application:

<script src="path/to/dist/micl.js"></script>

The main MICL JavaScript file can also be found on CDN networks, like on jsDelivr: https://cdn.jsdelivr.net/npm/material-inspired-component-library/dist/micl.js

4. Add a font

MICL uses the Google Sans as its default font. Include a reference to this font in your application.

<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Google+Sans:ital,opsz,wght@0,17..18,400..700;1,17..18,400..700&display=swap">

The Styles guide describes how to change the default font.

Foundations 🪟

A separate CSS file, based on the Material Design Layout Foundation, provides styles for an adaptive layout. It includes styles for the window frame, body region and panes that adjust to the available screen space, ensuring your layout follows Material Design's responsive guidelines.

Available components ✅

The library currently consists of the following components:

Change Log ↪️

8.0.0 (05.05.2026)

  • BREAKING: Renamed many CSS custom properties from --md-sys- to --md-comp-.
  • List, Menu, Accordion, Select: Aligned with latest MD3 spec.
  • Ripple: Now starts on pointer-down.
  • Text field: Outlined version uses CSS variable instead of inherited background.

7.0.0 (08.03.2026)

  • BREAKING: Use <a> instead of <label> inside Navigation rail.
  • BREAKING: Use inert for disabled cards instead of micl-card--disabled.
  • Snackbar: New component.
  • Toggle buttons: Support for toggling icons.

6.0.0 (23.12.2025)

  • BREAKING: Use command-attribute to control toggle buttons.
  • Date picker: New component.

5.0.0 (02.12.2025)

  • Time picker: New component.

4.0.0 (27.10.2025)

  • BREAKING: Moved layout.scss to sub-folder.
  • Alert: New component.
  • Stepper: New component.

3.1.0 (19.10.2025)

  • Checkbox: Refactoring + added support for checkbox groups.

3.0.0 (24.09.2025)

  • BREAKING: Use <nav> instead of <div> for Navigation rail.
  • App Bar: New component.
  • Layout: Support for adaptive layout.
  • Buttons: Improved handling of target area for small buttons.

2.0.0 (04.09.2025)

  • Navigation rail: New component.
  • Badge: New component.
  • Ripple: Now uses custom CSS properties.

1.3.0 (23.08.2025)

  • Menu: Added support for submenus.
  • Ripple: The ripple-effect does not use a pseudo-element anymore.
  • State layer: Rewrite for simpler styling.

1.2.0 (17.08.2025)

  • List: Added support for switches inside list items.

1.1.0 (12.08.2025)

  • Text field: Added support for multi-line text fields.