Icon property is accepted.
Built-in icon sets
| Set | String prefix | Notes |
|---|---|---|
| Lucide | (none — default) | Default set. Use plain icon names. |
| Solar | solar: | Append the style suffix (e.g. -bold, -bold-duotone). |
| SF Symbols | sfsymbols: | Use camelCase SF Symbol names. |
| Craft Icons | craft: | Use the craft icon name. |
| Geist Icons | geist: | Use the geist icon name. |
Icon string format
Default set (Lucide)
Pass the icon name as a plain string.
Solar icons
Prefix with
solar: and include the style suffix.SF Symbols
Prefix with
sfsymbols: followed by the camelCase symbol name.Roblox asset ID
Pass a full
rbxassetid:// string. The image is rendered at its native size with no spritesheet offset.Using icons in elements
Icons are accepted wherever anIcon property exists.
Adding custom icons
UseWindUI.Creator.AddIcons(setName, iconTable) to register your own asset IDs into an icon set. You can extend an existing set (like "solar") or define a completely new one.
Each key in iconTable is the icon name used in the Icon string. The value is a rbxassetid:// string (or a plain number, which is converted automatically).
solar: prefix:
AddIcons can also accept a spritesheet table with Image, ImageRectSize, and ImageRectPosition fields if you want to use a spritesheet rather than individual asset IDs.Removing an icon
Leaving anIcon property as an empty string "" hides the icon entirely without producing an error.