shuvroroy/filament-spatie-laravel-backup
A Filament page for creating and managing application backups using spatie/laravel-backup. Register the plugin in your panel provider, publish assets, and get a ready-made Backups page with customizable icon and heading.
spatie/laravel-backup) is already a de facto standard and is not what you're buying here. What you're buying is ~1–3 dev-days of a Filament page: list, create, download, delete, polling. Treat it as a UI accelerator, not an architecture decision.authorize() closure plus explicit create-backup / download-backup / delete-backup permissions. That's a real product decision: do support engineers get one-click backups, or is this admin-only? Decide before shipping, because the permission seeder is manual work your team owns.Adopt when all of the following hold:
spatie/laravel-backup (or are willing to adopt Spatie's config wholesale — this package does not abstract it).timeout(), noTimeout(), and usingQueue() deliberately. Large databases through a Livewire request are a real failure mode; if your DB is multi-GB, back up via queue + a dedicated worker, and consider whether the download path (streaming a large archive through your app server) is acceptable or whether operators should fetch from the disk directly.Look elsewhere when:
config/backup.php and Laravel's scheduler. If non-technical stakeholders must edit retention policies, you're building that yourself.To executives / leadership: This is a low-cost, low-risk close-out of a recurring compliance and operational checkbox. It puts backup creation, browsing, and download behind role-based permissions inside the admin panel we already run — no new vendor, no new infrastructure, no new contract. It reduces dependency on engineers for routine operational tasks (pre-migration snapshots, auditor requests) and gives us a demonstrable control for security reviews. It is MIT-licensed and removable in an afternoon, so the downside is bounded. Important framing: it complements, and does not replace, our infrastructure-level backup and disaster-recovery posture.
To engineering: One Composer dependency plus a plugin registration in AdminPanelProvider. It respects your existing spatie/laravel-backup config — disks, retention, notifications, and schedule are unchanged; only the trigger surface is new. Navigation, polling interval, queue, timeout, and page authorization are all configurable via fluent plugin methods, so no forking is required for normal customization. It exposes three named permissions (create-backup, download-backup, delete-backup) that we seed ourselves, and an authorize() hook for panel-level gating — so access control stays ours. Known constraints to plan for: it does not restore backups, it does not manage schedules or retention, and large-archive downloads stream through the app server, so we should route backup jobs to a dedicated queue and validate against our largest database before rollout. Verify Filament version compatibility and pin the dependency; this is a thin wrapper maintained by a single author, so treat it as a page we could vendor into our own codebase if it ever stalls.
How can I help you explore Laravel packages today?