The filament-radio-group package provides an enhanced radio button group functionality for your Filament applications. It offers a cleaner way to handle and display multiple radio button options, with support for customized icons, descriptions, and display arrangements.
Install the filament-radio-group package via composer:
composer require astersnake/filament-radio-group
The filament-radio-group package provides a RadioGroup
class, which you can use to construct a radio button group in your application.
use Astersnake\Filament\RadioGroup\RadioGroup;
$radioGroup = RadioGroup::make('radio_group')
->options([
'option_1' => 'Option 1',
'option_2' => 'Option 2',
'option_3' => 'Option 3',
])
->descriptions([
'option_1' => 'Description for option 1',
'option_2' => 'Description for option 2',
'option_3' => 'Description for option 3',
])
->icons([
'option_1' => 'lucide-fish',
'option_2' => 'lucide-fish',
'option_3' => 'lucide-fish',
])
->iconsColor([
'option_1' => 'text-primary-600',
'option_2' => 'text-success-600',
'option_3' => 'text-danger-600',
])
->columns(3)
->required();
In the example above, RadioGroup::make('radio_group')
creates a new radio button group with the name 'radio_group'.
- The
options()
method takes an associative array where keys are option values and values are option labels. - The
descriptions()
method takes an associative array where keys are option values and values are descriptions for options. - The
icons()
method takes an associative array where keys are option values and values are icon names. - The
iconsColor()
method is used to assign colors to the icons.
If you are using a custom theme for Filament, you will need to add this package's views to your Tailwind CSS config.
content: [
...
"./vendor/astersnake/filament-radio-group/resources/views/**/*.blade.php",
],
The filament-radio-group package is built on the original Filament radio field, which means it supports all the functionalities available from the base radio field. This includes but is not limited to labeling, setting a default value, and adding help text. The package simply extends these functionalities, providing more flexibility and customization options.
For more information on using the base radio field functionalities, please refer to the Filament Documentation.
To run the tests for the package:
composer test
Please refer to the CHANGELOG for more information about the recent changes.
Your contributions are always welcome! Please see our CONTRIBUTING guide for details.
If you discover any security vulnerabilities in this package, please follow our security policy to report them.
This package is licensed under the MIT License (MIT). Please see the License File for more information.