Summary
Rich user picker extending SelectField with a design optimized for user selection. Features avatars, names, emails, and verified badges in both the dropdown and trigger. Supports single selection with a rich trigger and multiple selection with removable avatar tags.
For read-only user display in tables, use UserColumn instead.
Basic usage
Eloquent Model Search
Multi-Select Relationship
State & validation
Stored value
State is a scalar ID (single) or an array of IDs (multiple). Values must match model primary keys when usingoptionModel() or relationship().
Validation rules
Inherits standard Filament Select validation. Option keys must exist in search results or staticoptions().
Configuration API
All methods acceptClosure unless noted.
FlexFieldFormBuilder / Studio config
UserSelectFieldConfigurator reuses Select Studio keys (searchable, multiple, native, clearable, variant, options, …) then applies user-specific keys:
Async search and
relationship() remain PHP-only (same boundary as SelectField).
Real-world examples
Custom Avatar Integration
Static Rich Options
Playground
/admin/flex-fields-playground/user-select
See Playground for setup.
Related components
Ops notes
UserSelect inherits Select Livewire search rate limiting (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.
Headless overlay teardown: Alpine destroy() cancels in-flight search and releases teleported menus; Livewire morph.updating also runs emergency overlay cleanup when a field node is removed (modal / slide-over close).