codexalta / vaultix
A dynamic Backup System for Laravel with Admin Dashboard, Smart Storage Projection, and Multi-provider Support.
Package info
Language:Blade
pkg:composer/codexalta/vaultix
Requires
- php: ^8.2|^8.3|^8.4
- laravel/framework: ^10.0|^11.0|^12.0|^13.0
- league/flysystem-aws-s3-v3: ^3.0
- league/flysystem-sftp-v3: ^3.0
- masbug/flysystem-google-drive-ext: ^2.5
- spatie/laravel-backup: ^9.0|^10.0
Requires (Dev)
- fakerphp/faker: ^1.9.1
- mockery/mockery: ^1.4.4
- orchestra/testbench: ^8.0|^9.0|^10.0
- phpunit/phpunit: ^10.0|^11.0
README
Vaultix is a sophisticated, secure, and professional backup management package for Laravel (v10 โ v13). It provides a full-featured administrative dashboard to manage multiple storage providers, track backup health, and maintain a detailed audit trail of all administrative activities.
๐ Key Features
- Multi-Provider Support: Seamlessly integrate with Google Drive, AWS S3, Cloudflare R2, and SFTP.
- Smart Activity Logging: Full audit trail with "Line-by-Line" diff highlighting (Git-style) for all configuration changes.
- Security:
- Access restricted to Super Admin and authorized emails.
- Signed URL protection for secure streamed downloads.
- No direct storage links exposed.
- Smart Projection: Automatically calculates estimated storage usage and file counts based on your retention policies.
- Automated Maintenance:
- Integrated scheduler for automatic backups.
- Self-pruning logs (automatically deletes old activity logs based on your retention settings).
- Data Mobility: Export/Import entire configurations and download activity logs in CSV/JSON formats.
- Real-time Monitoring: Disk usage alerts, scheduler health checks, and queue worker status.
๐ Requirements & Dependencies
Vaultix leverages several industry-standard packages to ensure reliability and performance:
- PHP:
^8.2 | ^8.3 | ^8.4 - Laravel:
^10.0 | ^11.0 | ^12.0 | ^13.0
Core Dependencies
These packages are automatically installed with Vaultix:
spatie/laravel-backupโ For the robust core backup engine.masbug/flysystem-google-drive-extโ For Google Drive integration.league/flysystem-aws-s3-v3โ For AWS S3 and Cloudflare R2 support.league/flysystem-sftp-v3โ For secure SFTP storage.
๐ Installation
1. Install via Composer:
composer require codexalta/vaultix
2. Run the Vaultix installer:
php artisan vaultix:install
This will automatically publish the configuration file and run only the Vaultix package migrations โ it will not affect your project's own pending migrations.
3. Environment Setup:
Add the following to your .env file:
VAULTIX_SUPER_ADMIN=your-email@example.com # Optional: Monitor a specific partition (e.g. in WSL/Docker) # VAULTIX_DISK_PATH=/mnt/c
โ๏ธ Configuration
Ensure your Laravel Scheduler and Queue Worker are running:
# Add to your server's crontab * * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1 # Keep the queue worker active for background backups php artisan queue:work
๐ Security & Auditing
Vaultix is designed with security as the top priority:
- Activity Logs: Every action (Add storage, Update Job, Download file) is recorded with User IP, User Agent, and a detailed "Before/After" snapshot of data.
- Signed Downloads: All backup downloads are generated as temporary signed URLs and streamed through the server to prevent storage link leakage.
- Access Control: Only the user defined in
VAULTIX_SUPER_ADMINcan manage authorized users and view sensitive activity logs.
๐ Exporting Logs
Export your audit logs directly from the dashboard:
- CSV โ Perfect for Excel/Spreadsheet auditing.
- JSON โ Ideal for developers and third-party integrations.
๐งช Testing
composer test
๐ค Contributing
Contributions are welcome! If you find a bug or want to add a feature, please open an issue or submit a pull request.
๐ก๏ธ Security Vulnerabilities
If you discover a security vulnerability within Vaultix, please send an e-mail to codexalta@gmail.com. All security vulnerabilities will be promptly addressed.
๐ License
The MIT License (MIT). Please see the License File for more information.