Vue Icons Plus

0.1.9 · active · verified Sun Apr 19

Vue Icons Plus is a comprehensive collection of over 50,000 SVG icons from popular icon libraries, designed for easy integration into Vue.js projects. Supporting Vue 3 and Vue 2.7+, it allows developers to import and use icons directly as components. The package, currently at version 0.1.9, follows a modular import structure where icons are accessed from subdirectories corresponding to their original icon pack (e.g., `vue-icons-plus/fa` for Font Awesome). This design minimizes bundle size by only including the necessary icons. Its release cadence appears to be ad-hoc based on bug fixes and new icon pack additions. Key differentiators include its vast selection of icons and explicit support for both modern Vue setups and older Webpack environments through separate `@vue-icons-plus/sfc-X` packages, although these have install time trade-offs.

Common errors

Warnings

Install

Imports

Quickstart

Demonstrates importing and using multiple icons from different families (Font Awesome, Bootstrap Icons, Material Design) as components in a Vue 3 setup with `<script setup>`.

<script setup lang="ts">
  import { FaBeer } from "vue-icons-plus/fa";
  import { BiSearch } from "vue-icons-plus/bi";
  import { MdHome } from "vue-icons-plus/md"; // Assuming MdHome exists in Material Design pack
</script>

<template>
  <div class="icon-showcase">
    <h1>My Icon Showcase</h1>
    <p>Enjoy a refreshing beer:</p>
    <FaBeer class="icon large-icon" />

    <p>Search for something great:</p>
    <BiSearch class="icon medium-icon" />

    <p>Go back home:</p>
    <MdHome class="icon small-icon" />

    <p>These icons are imported directly and rendered as SVG components in Vue 3.</p>
  </div>
</template>

<style>
.icon-showcase {
  font-family: sans-serif;
  padding: 20px;
  text-align: center;
}
.icon {
  display: inline-block;
  vertical-align: middle;
  margin: 10px;
  color: #3498db; /* Example color */
}
.large-icon { font-size: 3em; }
.medium-icon { font-size: 2em; }
.small-icon { font-size: 1.5em; }
</style>

view raw JSON →