Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Laravel Backup Manager

Laravel Backup Manager Laravel Package

nyoncode/laravel-backup-manager

Laravel Backup Manager is a Laravel package for organizing application backups in one place. It focuses on simplifying backup configuration, running and monitoring backup tasks, and integrating scheduled database and file backups into familiar Laravel workflows.

View on GitHub
Deep Wiki
Context7

CLI-first backup manager for Laravel — databases and files with encryption, restore, retention and monitoring.

Frequently asked questions about Laravel Backup Manager
How do I install and configure Laravel Backup Manager?
Install it with Composer using the nyoncode/laravel-backup-manager package, then publish and edit the package configuration file. In that configuration you define backup profiles, which targets to include, where archives are stored, and how long they are retained. After that you can run backups from Artisan or schedule them through Laravel's scheduler.
Can Laravel Backup Manager back up both a database and application files in one run?
Yes. The package supports flexible targets, so a profile can back up a database, one or more directories, or both in a single run. You define those targets in the configuration file, and the same run can send the resulting archive to one or more configured destinations.
How do scheduled backups and retention pruning work in Laravel Backup Manager?
You automate backup runs by registering the package's Artisan command in the Laravel scheduler. Retention rules then prune old archives automatically so storage use stays under control. Cleanup logic is centralized in CleanupManager, and cleanup can run synchronously or through a queue depending on your configuration.
Which Laravel and PHP versions are supported by Laravel Backup Manager?
The current release is tested against Laravel 12 with Pest 4 and Laravel 13 with Pest 5. The Laravel 13 and Pest 5 path requires PHP 8.4 and Symfony 8, so teams pinning Pest should confirm their environment resolves the intended major. Always check the package composer constraints for the exact supported ranges before upgrading.
How does multi-profile backup retention work on a shared disk?
Retention is applied per backup profile, even when multiple profiles share the same destination disk. The cleanup path accepts an optional profile parameter, and a null value preserves the previous behavior for compatibility. Legacy stored backups without profile tags still count toward the profile being cleaned, which reduces upgrade disruption.
Will upgrading Laravel Backup Manager break my custom SnapshotDriver implementation?
Custom SnapshotDriver implementations are the main breaking risk because they must update applyRetention() to accept the new optional profile parameter. Standard Laravel installs should see minimal friction because the queueable cleanup and restore timeout features are opt-in. Audit custom drivers in staging and update their method signatures before deploying.
Why do backup:list, backup:verify, and backup:restore hide backups from other profiles?
These commands are now profile-scoped, so they no longer list or operate on neighboring profiles' backups from a shared destination. That behavior is intentional and prevents one profile from acting on another profile's archives. Validate any scripts, dashboards, or runbooks that relied on cross-profile listings before you upgrade.
How do I run backup cleanup through the Laravel queue?
Set BACKUP_QUEUE=true to make backup:clean queueable, or dispatch CleanBackupsJob from your own code. The --sync option remains an explicit escape hatch when you want cleanup to run immediately in the current process. Also review queue.restore_timeout for restore jobs, confirm the queue name fallback to backups matches your worker configuration, and monitor failed_jobs and queue depth.
Can I store Laravel backups on S3 and local disks at the same time?
Yes. Laravel Backup Manager supports multiple destinations, so a profile can store copies on local disks and cloud drivers such as S3. You define the disks in the package configuration and the backup run writes to the destinations you select. Retention rules then manage old archives according to your profile policy.
Is Laravel Backup Manager safe to use in production and how should I test an upgrade?
It fits production Laravel applications that already use the scheduler, queues, and multi-disk storage, but upgrades should go through staging first. Audit all backup profiles and shared destinations, update custom SnapshotDriver signatures, and test backup:list, backup:verify, and backup:restore to confirm profile-scoped behavior. Then enable queued cleanup, tune queue.restore_timeout for your largest datasets, and monitor failed_jobs and queue depth after rollout.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo