icon component

Drop-in semantic component. See examples, sizes, variants, and source.

Icons render from the Lucide set with automatic SVG injection. Write <i class="icon [name]"> and the SVG is fetched from /webroot/assets/css/lucide-icons/[name].svg at runtime. Layer adjectives for size (xs sm md xl lg), semantic color (primary positive negative warning info neutral), opacity (muted faded), or transforms (rotate-90 flip-horizontal). Behaviour is wired by icon.js.

Icon System

Basic Icons

Icon Sizes

Icon Colors

Icon Buttons

Icon-Only Buttons

Colored Icon Buttons

Round Icon Buttons

Ghost Icon Buttons

Outline Icon Buttons

Labeled Icon Buttons

Labeled Icon Buttons (Icon on Left)

Icons with Text

Buttons with Icons

Links with Icons

Icon Animations

Animated Icons

Icon States

Icon Utilities

Rotation & Flipping

Common Patterns

Left Icon

Right Icon

Both Icons (Clearable)

Icons with Badges

3

Class API Reference

Type Class Usage Notes
Base icon Required base class on an <i> Pair with the icon name (e.g. icon star)
Sizes xs 12px (w-3 h-3) Standalone modifier
sm 16px (w-4 h-4) Standalone modifier
md / (default) 20px (w-5 h-5) Default size; class is optional
xl 24px (w-6 h-6) Standalone modifier
lg 32px (w-8 h-8) Standalone modifier
Color primary blue-600 Standalone modifier
positive green-600 Standalone modifier
negative red-600 Standalone modifier
warning orange-500 Standalone modifier
info blue-600 Alias of primary
neutral gray-500 Standalone modifier
State muted 60% opacity Standalone modifier
faded 40% opacity Standalone modifier
Animation animate-spin Continuous rotation Loaders / spinners
animate-pulse Opacity pulse Status indicators
Transform rotate-45 Rotate 45° Standalone modifier
rotate-90 Rotate 90° Standalone modifier
rotate-180 Rotate 180° Standalone modifier
rotate-270 Rotate 270° Standalone modifier
flip-horizontal Mirror on X-axis Standalone modifier
flip-vertical Mirror on Y-axis Standalone modifier
Position left Position icon at the left of an input-wrapper Pair wrapper with has-left-icon
right Position icon at the right of an input-wrapper Pair wrapper with has-right-icon
clickable Cursor + hover scale on a non-button icon Standalone modifier