jaocero/radio-deck
FilamentPHP plugin that upgrades the default radio field into selectable “card” options with icons, titles, and descriptions. Built for Filament v4 (Laravel 11, PHP 8.2+, Tailwind v4) with support via custom theme @source directive.
Radio component without modifying core Filament logic, reducing merge conflicts or breaking changes.->multiple()) introduces state complexity; ensure validation and form handling account for array returns.Icon system). Custom icons require alignment with Filament’s icon registry or manual CSS/JS overrides.Filament Version Alignment:
Theming Strategy:
Performance Impact:
RadioDeck instances will be used per form? Large grids (e.g., columns(3)) may impact rendering performance.Accessibility:
Maintenance:
Radio: Lacks icons/descriptions; this package adds UX value for complex options.Filament v3 → v4:
php artisan make:filament-theme
@source in theme.css (as per package docs).Radio components with RadioDeck incrementally, testing form submissions and validation.Incremental Adoption:
RadioDeck visibility during testing.multiple() mode (e.g., array vs. string types).Radio with RadioDeck in forms, starting with non-critical fields.jaocero/radio-deck for updates (MIT license allows forks if needed).composer.json to avoid unexpected breaking changes.theme.css) may need updates if Filament or Tailwind versions change. Track Filament’s release notes.debug:view command to inspect RadioDeck Blade templates if styling issues arise.@source directive in theme.css and Tailwind rebuild (npx tailwindcss -i ...).multiple() mode.RadioDeck instance loads its own Blade view. Cache compiled views if using Filament’s view caching.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Tailwind build fails | Broken styles | Add jaocero/radio-deck views to tailwind.config.js as fallback. |
| Custom theme misconfiguration | Styles not applied | Use Filament’s debug:view to verify template paths. |
| Multi-select state corruption | Invalid form submissions | Validate multiple() returns as arrays; use ->rules(['array']) in Filament. |
| Icon/heroicon conflicts | Missing or incorrect icons | Override icons via ->icons() or add custom Heroicons to Filament’s registry. |
| PHP 8.2+ compatibility issues | Runtime errors | Test with php -v and composer validate; pin PHP version in CI. |
RadioDeck in a sandbox environment.RadioDeck usage (e.g., enum templates).Radio and RadioDeck (e.g., multiple() behavior).RadioDeck (single/multi-select).How can I help you explore Laravel packages today?