wallacemartinss/filament-icon-picker
Modern icon picker for Filament v5 powered by blade-icons. Provides a sleek modal with search, provider filtering, infinite scroll, and live preview. Includes a form field, table column, and infolist entry, with configurable modal layout and icon sets.
blade-ui-kit/blade-icons, it inherits a mature, well-maintained icon library with broad compatibility (Heroicons, FontAwesome, Phosphor, etc.). This reduces dependency risk and future-proofs icon selection.Heroicons, PhosphorIcons) provide compile-time safety for icon usage, reducing runtime errors in navigation, actions, or dynamic UI elements.blade-heroicons). This adds ~1–5MB to the asset bundle, depending on the set chosen.@source directive). This is standard practice for Filament plugins but may need CI/CD adjustments if using custom build pipelines.filament-icon-picker:install-icons, icons:cache) simplifies setup but may require custom scripting for automated deployments.--all flag judiciously or cache icons (php artisan icons:cache).Icon helper and enums abstract icon naming conventions (e.g., heroicon-o-star vs. phosphor-whatsapp-logo-duotone), which could lead to confusion during debugging if not documented.icons:cache be run in CI or manually?Icon helper suffice for most use cases?showLabel()) sufficient for screen readers, or will ARIA attributes need manual addition?$navigationIcon).is_active).Icon helper, but this is not the primary design goal.IconPickerField.IconPickerColumn/IconPickerEntry.fas fa-user) in favor of the package’s API.| Component | Compatibility Notes |
|---|---|
| Filament 5.x | Full support. Test against the latest patch version (e.g., 5.10.x). |
| Laravel 12+ | Works with Laravel 12/13. Test with PHP 8.2+ (8.3 recommended). |
| Tailwind CSS | Requires Tailwind v3+. Customize via theme.css @source directive. |
| Blade Icons | Supports all Blade Icons packages. |
| Custom Themes | May need to override Blade templates if deep UI changes are required. |
composer require wallacemartinss/filament-icon-picker
php artisan filament-icon-picker:install-icons # Select sets interactively
npm install && npm run build
php artisan optimize:clear
php artisan vendor:publish --tag="filament-icon-picker-config"
php artisan icons:cache
wallacemartinss/filament-icon-picker and blade-ui-kit/blade-icons for breaking changes.blade-heroicons) may release updates independently.config/filament-icon-picker.php to avoid hardcoded values.Heroicons::OutlinedStar).Icon::phosphor('user', 'fill')) to catch typos.@source directive and npm run build.composer show).icons:cache.fn ($record) => ...).php artisan icons:cache) to reduce runtime parsing.heroicon-o-star) are stored as strings; no additional DB schema changes.| Scenario | Impact | Mitigation Strategy |
|---|---|---|
| Icon set package fails to install | Broken modal UI | Fallback to manual Composer installs. |
| Tailwind build fails |
How can I help you explore Laravel packages today?