A universal plugin to access thousands of icons as on-demand components across all major frameworks and build tools.
unplugin-icons is a universal build tool plugin that provides on-demand access to thousands of icons as components. It solves the problem of icon management in modern web development by offering a consistent way to use icons across different frameworks and build tools while ensuring only used icons are included in the final bundle.
Frontend developers working with React, Vue, Solid, Svelte, or other JavaScript frameworks who need a flexible, performant icon solution that integrates with their existing build toolchain.
Developers choose unplugin-icons because it offers universal compatibility across all major frameworks and build tools, provides access to over 200,000 icons from popular sets, and ensures optimal performance through on-demand loading and tree-shaking.
🤹 Access thousands of icons as components on-demand universally.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Integrates with Vite, Webpack, Rollup, and more via unplugin, providing a consistent experience across all major build tools without needing separate plugins.
Access over 200,000 icons from ~150 popular sets via Iconify, including logos and emojis, all through a single API, eliminating dependency on multiple icon packages.
Implements on-demand loading so only icons actually used are bundled, keeping production builds lean and performant with automatic tree-shaking.
Supports loading custom icons via FileSystemIconLoader or external packages, allowing seamless mixing with standard collections using the same universal API.
The package is ESM-only, forcing projects to use ES modules, which can break compatibility with legacy CommonJS setups or require migration efforts.
Each framework (e.g., React, Svelte) needs specific compiler settings and peer dependencies like @svgr/core, adding complexity and initial setup time.
The auto-install feature for icon sets is marked as experimental, which may lead to instability or unexpected behavior in production environments.