Rating Star
A Filament plugin that provides elegant star rating components for forms, tables, and infolists. Features interactive rating input with support for half-stars and zero values, fully customizable star count, color, and icon size. Perfect for collecting and displaying user ratings in any Filament-powered panel.
Author:
l3aro
Documentation
A Filament plugin that provides elegant star rating components for forms, tables, and infolists. Features interactive rating input with support for half-stars and zero values, fully customizable star count, color, and icon size. Perfect for collecting and displaying user ratings in any Filament-powered panel.
#Installation
You can install the package via composer:
composer require l3aro/rating-star-for-filament
[!IMPORTANT] If you have not set up a custom theme and are using Filament Panels follow the instructions in the Filament Docs first.
After setting up a custom theme add the plugin's views to your theme css file or your app's css file if using the standalone packages.
@source '../../../../vendor/l3aro/rating-star-for-filament/resources/**/*.blade.php';
You can publish the config file with:
php artisan vendor:publish --tag="filament-rating-star-config"
Optionally, you can publish the views using
php artisan vendor:publish --tag="filament-rating-star-views"
This is the contents of the published config file:
use Filament\Support\Colors\Color;
use Filament\Support\Enums\IconSize;
return [
'stars' => 5,
'allow_half_star' => false,
'allow_zero' => false,
'color' => Color::Amber,
'icon_size' => IconSize::Medium,
];
#Usage
#Form Field
Use StarInput in your form schema:
use l3aro\FilamentRatingStar\Components\StarInput;
use Filament\Support\Colors\Color;
use Filament\Support\Enums\IconSize;
StarInput::make('rating')
->stars(5) // Number of stars (default: 5)
->allowHalfStar() // Enable half-star selection (default: false)
->allowZero() // Allow zero rating (default: false)
->color(Color::Amber) // Star color (default: Amber)
->iconSize(IconSize::Medium); // Star size (default: Medium)
#Table Column
Use StarColumn in your table:
use l3aro\FilamentRatingStar\Components\StarColumn;
use Filament\Support\Colors\Color;
use Filament\Support\Enums\IconSize;
StarColumn::make('rating')
->stars(5) // Number of stars to display (default: 5)
->color(Color::Amber) // Star color (default: Amber)
->iconSize(IconSize::Medium); // Star size (default: Medium)
#Infolist Entry
Use StarEntry in your infolist:
use l3aro\FilamentRatingStar\Components\StarEntry;
use Filament\Support\Colors\Color;
use Filament\Support\Enums\IconSize;
StarEntry::make('rating')
->stars(5) // Number of stars to display (default: 5)
->color(Color::Amber) // Star color (default: Amber)
->iconSize(IconSize::Medium); // Star size (default: Medium)
#Register Plugin
Enable the plugin in your PanelProvider:
use l3aro\FilamentRatingStar\FilamentRatingStarPlugin;
public function panel(Panel $panel): Panel
{
return $panel
->plugins([
FilamentRatingStarPlugin::make(),
]);
}
#Testing
composer test
#Changelog
Please see CHANGELOG for more information on what has changed recently.
#Contributing
Please see CONTRIBUTING for details.
#Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
#Credits
#License
The MIT License (MIT). Please see License File for more information.
The author
Baro is a Laravel developer with over eight years of experience building scalable and maintainable applications. He specializes in the Laravel and Filament ecosystems, focusing on crafting high-quality developer tools and packages. His work aims to simplify complex workflows so developers can move faster and build with confidence.
From the same author
Featured Plugins
A selection of plugins curated by the Filament team
Custom Dashboards
Let your users build and share their own dashboards with a drag-and-drop interface. Define your data sources in PHP and let them do the rest.
Filament
Spotlight Pro
Browse your Filament Panel with ease. Filament Spotlight Pro adds a Spotlight/Raycast like Command Palette to your Filament Panel.
Dennis Koch
Data Lens
Advanced Data Visualization for Laravel Filament - a premium reporting solution enabling custom column creation, sophisticated filtering, and enterprise-grade data insights within admin panels.
Padmission