uiDocs.layout.documentationTitle

uiDocs.icons.badge

uiDocs.icons.heroTitle

uiDocs.icons.heroDescription

uiDocs.icons.activation.title

uiDocs.icons.activation.description

builder.Services.AddUI(options =>
{
    // Enable icon packs (lazy-loaded on frontend)
    options.UseLucideIcons()
           .UseTablerIcons()
           .UseHeroicons()
           .UseFontAwesome()
           .UseAntDesignIcons()
           .UseMaterialIcons()
           .UseBootstrapIcons()
           .UseFeatherIcons()
           .UseIonIcons()
           .UseRemixIcons()
           .UseWeatherIcons();
});

uiDocs.icons.patterns.title

uiDocs.icons.patterns.unified.title

uiDocs.icons.patterns.unified.description

// Generic Approach (Unified Icon)
new Icon("lucide:activity", size: 24, color: "text-blue-500");

// Specialized Components (Type-safe)
new LucideIcon("activity") { Size = 24 };
new TablerIcon("user") { Color = "text-red-500" };
new FontAwesomeIcon("rocket") { Style = IconStyle.Solid };
uiDocs.icons.patterns.optimization.label

uiDocs.icons.patterns.optimization.description

uiDocs.icons.patterns.styling.label

uiDocs.icons.patterns.styling.description

uiDocs.icons.customProviders.title

uiDocs.icons.customProviders.description

public class MyCustomIconProvider : IIconProvider
{
    public string Name => "my-icons";
    public string Resolve(string name) => $"<svg>...</svg>";
}

// Registration
options.WithIconProvider<MyCustomIconProvider>();

uiDocs.icons.performanceTip.title

uiDocs.icons.performanceTip.description