# Monicon: Universal Icon Library

Monicon is an easy-to-use icon library that makes adding icons to your projects simple. It works with popular frameworks like React, React Native, Next.js, Vue, Nuxt, Svelte and more. It's provides 200,000+ icons from popular sets like Material Design, Feather, and Font Awesome.

## Why Use Monicon?

- **Huge Icon Library**: Get access to over 200,000 icons from famous sets like Material Design, Feather, and Font Awesome.
- **Custom Icons**: You can create custom icons and use them in your projects. Monicon makes it easy to add your own icons.
- **Works with Modern Tools**: Monicon supports tools like Vite, Webpack, Rollup, and others, so it's ready for any project.
- **Fast and Efficient**: Monicon loads icons quickly to keep your project running smoothly. No flickering or lagging.
- **Easy to Use**: Works with React, Vue, Svelte, Next.js, and other popular frameworks, making icon integration simple. You can discover icons on the [Icones](https://icones.js.org/) website.
- **Customizable**: You can easily change the size, color, and other features of the icons to fit your design.
- **Collaboration**: Monicon helps you collaborate with designers to speed up the design process and get better results. [Iconify Figma Plugin](https://www.figma.com/community/plugin/735098390272716381/iconify) allows you to use icons directly in Figma.
- **Free and Open Source**: Monicon is free to use and open source, so you can use it in any project without restrictions.

No matter which framework you use, Monicon makes adding and managing icons easy. Check out the documentation to see how Monicon can help improve your next project with great-looking icons!

## Comparison: Monicon & Iconify & unplugin-icons

Monicon was created to address a critical gap in the React ecosystem: The need for a truly universal icon package that works seamlessly across both web and native platforms. While tools like unplugin-icons are great for certain use cases, they fall short in key areas that Monicon was specifically designed to solve.

Check out the issues for more details: [Universal Support #15](https://github.com/oktaysenkan/monicon/issues/15#issuecomment-2054178367)

| Feature                    | Monicon                                                                                       | @iconify/react                                                    | unplugin-icons                                       |
| -------------------------- | --------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | ---------------------------------------------------- |
| **Icon Rendering**         | Icons are bundled during build time, ensuring instant rendering with no blinking.             | Icons load over HTTP, which can cause blinking during rendering.  | Icons are bundled at build time, no blinking issues. |
| **Offline Support**        | Fully offline-compatible, works seamlessly with PWAs, Electron apps, and native environments. | Does not work offline due to reliance on HTTP for fetching icons. | Works offline                                        |
| **React Native Support**   | Fully supports React Native, making it ideal for mobile and native projects.                  | No support for React Native.                                      | No support for React Native.                         |
| **Modern Bundler Support** | Compatible with Metro, Vite, Webpack, Rollup, Rspack, and others.                             | Primarily web-focused and lacks versatility across bundlers.      | No support for Metro.                                |
| **Custom Icon Support**    | Easily create and use custom icons in your projects.                                          | Easily create and use custom icons in your projects.              | Easily create and use custom icons in your projects. |
