Skip to main content

Icon

Displays an icon from the Lucide icon library. All ~1,600+ Lucide icons are supported, referenced by their kebab-case name. Use icons to add visual context to labels, buttons, cards, and other elements.

Props

Icon field format

When specifying an icon in component props that accept an icon value, you can use either format:
  • A plain string — just the icon name:
  • An object — with optional styling overrides:

Custom icon aliases

In addition to the full Lucide set, the following semantic aliases are available for convenience:
Browse the full icon set at lucide.dev/icons. Any icon listed there can be used by its kebab-case name.

Image

Displays an image with flexible sizing, fitting, and theme-aware source support.
You can also provide separate images for light and dark themes:

Props

Use fit="cover" with a fixed width and height to crop images into consistent thumbnails. Use fit="contain" when you need to show the full image without cropping.

Badge

A small label used to indicate status, categories, or tags.

Props

Combine badges with layout components to build tag lists or status indicators inside cards and tables.

Transition

Wraps a child element with a fade-in and fade-out animation. Use this to add polish when content appears or disappears — for example, when toggling visibility with states.
The animation applies a 0.2-second fade with a slight vertical slide. There are no configurable props — simply wrap any element to enable the effect.
Transition works well with States to animate content that conditionally appears based on user input or data changes.