asignua/filament-rating
A Filament plugin that adds a customizable star rating field and table column to your admin panel. Let users rate records directly in forms and tables, with configurable icons, colors, and half-star support.
Architecture fit
Rating form field, RatingColumn table column, RatingEntry infolist entry) map cleanly onto Filament's existing field/column/entry contracts. No service providers of consequence, no persistence layer, no domain model — this is a UI concern, which keeps architectural blast radius small..fi-rating*, which limits bleed into the rest of the panel.Integration feasibility
composer require; no asset publishing pipeline, no npm step, no queue or migration footprint. Realistically a same-day spike for one engineer.mokhosh/filament-rating (stars(), allowZero(), color(), size(), theme(RatingTheme::...)) means an existing rating UI can be swapped by namespace change alone — attractive if we already have ratings in a panel, but it is a claim that must be proven against our actual call sites, not accepted from release notes.Technical risk
role="slider", arrow/Home/End/Delete keys, aria-valuetext ("3 of 5 stars"), role="img" equivalents on column and entry, RTL mirroring, panel-driven dark mode. Building and testing that in-house is materially more expensive than adopting it.Key questions
filament/filament and livewire/livewire, and is there a CI matrix proving 5.x minor compatibility?mokhosh/filament-rating API compatibility verified by a test suite, or asserted in prose? Which methods are not mirrored?RatingColumn support sorting and filtering (e.g. "show 4+ star records"), or is it display-only?clearable() map to null or 0 in the payload — the distinction affects nullable columns and "no rating yet" reporting.Stack fit
Migration path
decimal(2,1) (or equivalent) from day one so half stars remain available without a later migration.mokhosh/filament-rating: inventory every Rating/column/entry usage, swap the namespace, and diff behavior against the compatibility list. Treat any method absent from the release notes as unverified.Compatibility
Sequencing
Maintenance
Support
Scaling
Failure modes
halfStars() → silent truncation of 0.5 values. Highest-likelihood data-integrity failure; mitigate with the decimal column decision at step 1 of sequencing.clearable() semantics (null vs. 0) misinterpreted downstream → "unrated" records counted as one-star in reporting. Verify and document the mapping.mokhosh/filament-rating → a method we rely on is missing or renamed, surfacing only in production. Mitigate by exercising every call site during the migration audit.aria-valuetext, which degrades the accessibility win precisely where it matters. Confirm fallback before multi-region rollout.Ramp-up
Overall: a low-risk, narrowly scoped adoption that is worth taking primarily for the accessibility and zero-build-asset properties, not for feature breadth. Gate the decision on the license/maintainer questions, on verified mokhosh compatibility, and on a decimal-aware storage decision made before the first production write.
How can I help you explore Laravel packages today?