Google's official Material Design icon collection providing 932 icons in multiple formats
npx @tessl/cli install tessl/npm-material-design-icons@3.0.0Material Design Icons is Google's official icon collection providing 932 unique Material Design icons across 16 categories. The package offers multiple consumption methods including web fonts, individual asset files, sprite sheets, and programmatic access to asset paths.
npm install material-design-iconsconst { STATIC_PATH } = require("material-design-icons");For ES modules:
import { STATIC_PATH } from "material-design-icons";const { STATIC_PATH } = require("material-design-icons");
const path = require("path");
// Access icon file paths programmatically
const actionIconPath = path.join(STATIC_PATH, "action", "svg", "production", "ic_3d_rotation_24px.svg");
const fontPath = path.join(STATIC_PATH, "iconfont", "MaterialIcons-Regular.woff2");
console.log(actionIconPath);
console.log(fontPath);For web applications using CDN:
<!-- Web font integration -->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<i class="material-icons">3d_rotation</i>Material Design Icons is structured as an asset collection with multiple access patterns:
The collection includes 932 icons organized into these categories:
Programmatic access to the package directory for building custom asset paths.
/**
* Path to the package directory containing all icon assets
*/
const STATIC_PATH: string;Use Material Design Icons as web fonts for easy integration in web applications.
@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url(MaterialIcons-Regular.woff2) format('woff2');
}
.material-icons {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 24px;
display: inline-block;
}Access individual icon files in PNG, SVG, and platform-specific formats.
// Asset path patterns
const pngPath = `${STATIC_PATH}/{category}/{density}/{filename}`;
const svgPath = `${STATIC_PATH}/{category}/svg/production/{filename}`;
const iosPath = `${STATIC_PATH}/{category}/ios/{filename}`;Pre-generated CSS and SVG sprite sheets for optimized web delivery.
<!-- CSS sprite usage -->
<link href="sprite-{category}-{color}.css" rel="stylesheet">
<div class="icon icon-ic_{icon_name}_{color}_{size}dp"></div>
<!-- SVG symbol sprite usage -->
<svg><use xlink:href="sprite.svg#ic_{icon_name}_24px"></use></svg>Gulp-based build tools for generating custom sprites and optimizing assets.
// Available Gulp tasks
gulp.task('png-sprites'); // Generate PNG sprite sheets
gulp.task('svg-sprites'); // Generate SVG sprite sheets and symbols
gulp.task('iconjar'); // Generate IconJar integration file
gulp.task('default'); // Run all sprite generation tasks