Install Monicon with Qwik

Setting up Monicon with Qwik is a straightforward process. This guide will walk you through the installation and configuration steps to get started with Monicon in your Qwik project.

Install

To get started, you’ll need to install the necessary dependencies for Monicon. In your project directory, run the following command to install the dependencies.

npm i @monicon/qwik @monicon/vite

Now you should install the development dependency @iconify/json for the icon sets. This package provides a comprehensive collection of icons that can be easily integrated into your project.

npm i -D @iconify/json
 
# or specific icon sets
npm i -D @iconify-json/mdi @iconify-json/feather

Configure Vite

Now that the dependencies are installed, you’ll need to configure Vite to use Monicon.

vite.config.ts
import { defineConfig } from "vite";
import monicon from "@monicon/vite";
 
export default defineConfig({
  plugins: [
    monicon({
      icons: [
        "mdi:home",
        "feather:activity",
        "logos:active-campaign",
        "lucide:badge-check",
      ],
      // Load all icons from the listed collections
      collections: ["radix-icons"],
    }),
  ],
});
💡

The icons array in the monicon plugin configuration specifies the icon sets you want to use in your project. You can add more icon sets as needed.

For a complete list of available icon sets, refer to the Icones website.

Usage

You can now use Monicon in your Qwik components. Here’s an example of how to use Monicon in a Qwik component.

src/routes/index.tsx
import { component$ } from "@builder.io/qwik";
import { Monicon } from "@monicon/qwik";
 
export default component$(() => {
  return (
    <main>
      <Monicon name="mdi:home" />
      <Monicon name="logos:active-campaign" size={32} />
      <Monicon name="feather:activity" color="red" />
      <Monicon name="lucide:badge-check" size={24} strokeWidth={4} />
    </main>
  );
}

Next Steps

You’ve successfully set up Monicon with Qwik! You can now explore more icon sets and customize your usage further.