
Summary
Searchable blade-icons picker with lazy SVG rendering, set filters, whitelist/exclude controls, paginated server-side search, and virtual scrolling for large catalogs. Stores the full icon name string (e.g.heroicon-o-star, gravityui-star).
The stored value is a plain string, making it compatible with any standard Filament or Blade icon component.
Basic usage
Standard Icon Picker
Strict Whitelist
State & validation
Stored value
State is the full blade-icons name stored as a plain string.Validation rules (built-in)
Custom rule checks the value against the configured catalog (sets, whitelist, and exclude list).Configuration API
All methods acceptClosure unless noted.
Real-world examples
CMS Navigation Icon
Frontend Usage (Blade)
Playground
/admin/flex-fields-playground/icon-picker-field
See Playground for setup.
Ops notes
getIconPickerSearchResults and getIconPickerSvgPreviews share the Select-family Livewire rate limit (filament-flex-fields.select.search_rate_limit_per_minute). Keys use the authenticated user id or Request::ip() — configure Laravel TrustedProxies behind a reverse proxy. SVG preview batches stay capped at 64 icons. When limited, search returns an empty page (hasMore=false) and SVG previews return [].