mdi-vue3

Mirror of @mdi/js exported as self-contained Vue components
33,789 3
Install
npm install mdi-vue3
Latest Version:7.4.47
Vue:3
License:MIT
Last Updated:Aug 27, 2026
Links: GitHub  ·  npm
Maintainer: propaganistas

Material Design Icons - Tree-shakeable Vue3 components

This package exports all icons of @mdi/js as self-contained, tree-shakeable Vue components. Package versions equal the version of the contained @mdi/js icon set. The package is configured to automatically publish new releases when available to stay on par with @mdi/js. No human involved.

@mdi/js mdi-vue3
6.4.95 6.4.95
6.5.95 6.5.95
... ...

Installation

npm install mdi-vue3
yarn add mdi-vue3

Note: There's no need to install @mdi/js by yourself.

Usage

Icon names are transformed into the following format: mdiNameIcon

@mdi/js mdi-vue3
mdiAbacus AbacusIcon
mdiCheck CheckIcon
... ...

Knowing that, you can then import an icon as a Vue component. As long as you make use of ES6 imports tree-shaking is supported in production builds.

<template>
  <AbacusIcon />
</template>

<script>
  import { AbacusIcon } from "mdi-vue3"
  
  export default {
    components: { AbacusIcon },
  }
</script>

Every icon is rendered into the following:

<svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" aria-hidden="true">
    <path d="..." />
</svg>

The SVG's attributes are deliberately kept clean. This means that you'll most likely want to assign an explicit width and/or height to the icon.

Manual icon build

npm install
npm run build

Related Packages

nuxtjs-mdi-font

Material Design Icons for Nuxt app

9,987 1
@jamescoyle/vue-icon

Icon component for Vue.js

579,175 28
vue-mdijs

Vue component wrapper for @mdi/js

6,538 12
materialdesignicons-vue3

Icons from materialdesignicons.com rendered as PascalCase vue components with Md...

1,579 2
vue3-icon

Icon component for Vue 3

312,358 4

Version History

Version Released License
7.4.47 MIT
7.3.67 MIT
7.2.96 MIT
7.1.96 MIT
7.0.96 MIT