# Iconify — Universal Icon Framework for 200+ Icon Sets > A universal icon framework that provides one unified syntax to use over 200,000 icons from 200+ open source icon sets in React, Vue, Svelte, or as web components. ## Install Save in your project root: # Iconify — Universal Icon Framework for 200+ Icon Sets ## Quick Use ```bash npm install @iconify/react ``` ```jsx import { Icon } from '@iconify/react'; function App() { return (
); } ``` ## Introduction Iconify unifies over 200 open source icon sets behind a single API. Instead of installing separate packages for Material Design Icons, Lucide, Phosphor, Heroicons, and others, you use one component with a consistent `icon` prop syntax. Icons are loaded on demand and rendered as inline SVG. ## What Iconify Does - Provides access to 200,000+ icons from 200+ collections through a single syntax - Renders icons as inline SVG for full CSS styling control - Loads only the icons used on each page rather than entire icon sets - Offers framework components for React, Vue, Svelte, Ember, and web components - Includes an offline bundle mode for applications that cannot make network requests ## Architecture Overview Iconify uses a two-layer design. The icon data layer maintains a JSON-based registry of icon sets, where each icon is stored as an optimized SVG path. The rendering layer provides framework-specific components that look up icon data by name, fetch missing icons from the Iconify API (or a local bundle), and render them as inline SVG elements. A local cache avoids redundant network requests. ## Self-Hosting & Configuration - Install the framework package: `@iconify/react`, `@iconify/vue`, or `@iconify/svelte` - Use icons by name: `` with set-prefix:icon-name syntax - For offline use, install icon data packages like `@iconify-json/mdi` and bundle locally - Self-host the Iconify API using the open source API server for full control - Use the Iconify Icon web component for framework-agnostic usage ## Key Features - One component, 200+ icon sets, 200,000+ icons - On-demand loading fetches only icons that appear on the page - Full CSS control: color via currentColor, size via font-size or width/height - Offline bundles available for every icon set as JSON packages - Figma, Sketch, and Adobe XD plugins for design workflow integration ## Comparison with Similar Tools - **Lucide** — single icon set with tree-shakeable imports; limited to one collection - **react-icons** — bundles multiple icon sets but imports entire set files; larger bundle size - **Heroicons** — Tailwind Labs icon set only; one style collection - **Font Awesome** — icon font approach; larger payload, less CSS flexibility than inline SVG - **unplugin-icons** — build-time icon loading using Iconify data; compile-time alternative ## FAQ **Q: Does Iconify load icons from the internet at runtime?** A: By default, yes. Icons are fetched from the Iconify API on first use and cached. For offline apps, install @iconify-json packages to bundle icon data locally. **Q: Can I use Iconify with Tailwind CSS?** A: Yes. Icons render as inline SVG and inherit currentColor, so Tailwind text color and size utilities work directly. **Q: How do I find available icon names?** A: Browse the full catalog at icon-sets.iconify.design, which lets you search and preview icons from every supported collection. **Q: What is the difference between @iconify/react and the Icon web component?** A: @iconify/react is a React component optimized for the React rendering cycle. The web component (iconify-icon) works in any HTML page without a framework. ## Sources - https://github.com/iconify/iconify - https://iconify.design --- Source: https://tokrepo.com/en/workflows/asset-fa690898 Author: AI Open Source