amjadiqbal/filament-deleted-records
A Filament plugin that adds a dedicated panel resource for browsing, filtering, and restoring soft-deleted Eloquent records. Quickly inspect trashed data, view deleted items, and restore or force-delete them without leaving the admin panel.
Architecture fit
amjadiqbal/filament-deleted-records is a Filament panel plugin that surfaces soft-deleted Eloquent records for review, restore, and permanent purge. It sits entirely inside the admin panel layer — no queue workers, no external services, no schema of its own beyond what Laravel's SoftDeletes already provides. That makes it a low-coupling addition: it can be added to one panel provider and removed without touching domain code.SoftDeletes on the models we care about and already run a Filament 4/5 admin panel on Laravel 12/13. The package makes no claim of support for Laravel 11 or Filament 3, so anything older is out of scope.Integration feasibility
restore/forceDelete-style gates or the package's callback hook.Technical risk
LIKE against the whole stored JSON payload, which allowed a panel user to confirm whether a masked value (e.g., a password hash) existed. v1.0.1 fixes this by matching on key exactly plus case-insensitive title attributes, and never a masked attribute. The fix is correct, but a leak of this class shipping in a 1.0.0 tells us the security review was not adversarial. Budget for our own review of config and query paths.Key questions
Stack fit
DB_TEST_DRIVER. If we run MariaDB or an older MySQL, treat that as unverified.Migration path
SoftDeletes and that their deleted_at columns are indexed.Compatibility
Sequencing
composer.json.Maintenance
^1.0 constraint on a package whose patch releases can change search behavior.Support
Scaling
deleted_at is indexed; watch for panels where the deleted-record count reaches six figures.LIKE-over-JSON search is a performance win — the old path could not use indexes and scanned the full stored payload per row. Exact-key matching is cheaper.Failure modes
Ramp-up
How can I help you explore Laravel packages today?