PHPackages                             webteractive/filament-google-drive-backup-manager - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. webteractive/filament-google-drive-backup-manager

ActiveLibrary

webteractive/filament-google-drive-backup-manager
=================================================

A Filament plugin for managing Google Drive backups in Laravel

v0.1.2(1mo ago)09↑2566.7%MITPHPPHP ^8.4

Since Mar 27Pushed 1mo agoCompare

[ Source](https://github.com/webteractive/filament-google-drive-backup-manager)[ Packagist](https://packagist.org/packages/webteractive/filament-google-drive-backup-manager)[ Docs](https://github.com/webteractive/filament-google-drive-backup-manager)[ RSS](/packages/webteractive-filament-google-drive-backup-manager/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (18)Versions (4)Used By (0)

Filament Google Drive Backup Manager
====================================

[](#filament-google-drive-backup-manager)

[![Latest Version on Packagist](https://camo.githubusercontent.com/1cf14d6cad0e3e93ba07aa289890a6f93fe182d4c8b0d7d9919e272c4b5002a9/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7765627465726163746976652f66696c616d656e742d676f6f676c652d64726976652d6261636b75702d6d616e616765722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/webteractive/filament-google-drive-backup-manager)[![Total Downloads](https://camo.githubusercontent.com/b4638cb8a7a2eaab2e6cb3e1453730bdd0e47c5f07a3831352050d3837403de5/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7765627465726163746976652f66696c616d656e742d676f6f676c652d64726976652d6261636b75702d6d616e616765722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/webteractive/filament-google-drive-backup-manager)

A [Filament](https://filamentphp.com) plugin for managing [Spatie Laravel Backup](https://github.com/spatie/laravel-backup) files stored on Google Drive. View, download, delete, and trigger backups directly from your Filament admin panel.

Requirements
------------

[](#requirements)

- PHP 8.4+
- Laravel 11+
- Filament 4.0+
- [Spatie Laravel Backup](https://github.com/spatie/laravel-backup) 9.0+

Installation
------------

[](#installation)

```
composer require webteractive/filament-google-drive-backup-manager
```

Publish the config file:

```
php artisan vendor:publish --tag="google-drive-backup-manager-config"
```

Google Drive Setup
------------------

[](#google-drive-setup)

Add your Google OAuth credentials to the published config file (`config/google-drive-backup-manager.php`):

```
'google' => [
    'client_id' => env('GOOGLE_DRIVE_CLIENT_ID'),
    'client_secret' => env('GOOGLE_DRIVE_CLIENT_SECRET'),
    'redirect' => env('GOOGLE_DRIVE_REDIRECT_URI'),
],
```

Then add a `google` disk to your `config/filesystems.php`:

```
'disks' => [
    'google' => [
        'driver' => 'google',
        'folder' => env('GOOGLE_DRIVE_FOLDER', '/'),
    ],
],
```

Add the corresponding values to your `.env` file:

```
GOOGLE_DRIVE_CLIENT_ID=your-client-id
GOOGLE_DRIVE_CLIENT_SECRET=your-client-secret
GOOGLE_DRIVE_REDIRECT_URI=https://yourapp.com/google-drive-backup-manager-oauth/callback
GOOGLE_DRIVE_FOLDER=/
```

The refresh token is automatically resolved from the user who connected their Google account via the admin panel. No manual token configuration needed.

Filament Panel Registration
---------------------------

[](#filament-panel-registration)

Register the plugin in your Filament panel provider:

```
use Webteractive\GoogleDriveBackupManager\GoogleDriveBackupManagerPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        // ...
        ->plugins([
            GoogleDriveBackupManagerPlugin::make(),
        ]);
}
```

Authorization
-------------

[](#authorization)

Access to the backup manager is controlled by a Laravel Gate. By default, the gate name is `viewBackups`. Define it in your `AppServiceProvider`:

```
use Illuminate\Support\Facades\Gate;

Gate::define('viewBackups', function ($user) {
    return $user->is_admin;
});
```

You can change the gate name in the config:

```
'gate' => 'yourCustomGate',
```

Configuration
-------------

[](#configuration)

All settings are in `config/google-drive-backup-manager.php`:

```
return [
    // Storage disk name (must match a disk in config/filesystems.php)
    'disk' => 'google',

    // Laravel Gate for authorization
    'gate' => 'viewBackups',

    // Filament sidebar navigation group
    'navigation_group' => 'System',

    // Sidebar sort order
    'navigation_sort' => 5,

    // Named route for downloading backups
    'download_route' => 'backup.download',

    // Column on users table for storing Google OAuth tokens
    'google_token_column' => 'google_backup',

    // Queue name for backup jobs (null = default queue)
    'queue' => null,

    // Google OAuth credentials (kept within this package's config)
    'google' => [
        'client_id' => env('GOOGLE_DRIVE_CLIENT_ID'),
        'client_secret' => env('GOOGLE_DRIVE_CLIENT_SECRET'),
        'redirect' => env('GOOGLE_DRIVE_REDIRECT_URI'),
    ],

    // Route middleware
    'middleware' => ['web', 'auth'],

    // Base path for OAuth routes
    'oauth_base_path' => 'google-drive-backup-manager-oauth',

];
```

Scheduling Backups
------------------

[](#scheduling-backups)

This plugin provides an on-demand UI for triggering backups, but does **not** schedule them automatically. To run backups on a schedule, add the Spatie backup commands to your application's `routes/console.php`:

```
use Illuminate\Support\Facades\Schedule;

Schedule::command('backup:run')->daily()->at('02:00');
Schedule::command('backup:clean')->daily()->at('03:00');
```

Refer to the [Spatie Laravel Backup docs](https://spatie.be/docs/laravel-backup/v9/introduction) for scheduling options, notification setup, cleanup strategies, and other configuration.

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Glen Bangkila](https://github.com/webteractive)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance90

Actively maintained with recent releases

Popularity7

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

3

Last Release

47d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b9cd718c82f37ed135a350effd6b2b7c3a75a815a029bbfccbf8c777d1aa3184?d=identicon)[hadefication](/maintainers/hadefication)

---

Top Contributors

[![hadefication](https://avatars.githubusercontent.com/u/6673244?v=4)](https://github.com/hadefication "hadefication (9 commits)")

---

Tags

laravelbackupgoogle-drivefilamentWebteractivespatie-backup

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/webteractive-filament-google-drive-backup-manager/health.svg)

```
[![Health](https://phpackages.com/badges/webteractive-filament-google-drive-backup-manager/health.svg)](https://phpackages.com/packages/webteractive-filament-google-drive-backup-manager)
```

###  Alternatives

[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k2.9M88](/packages/bezhansalleh-filament-shield)[dutchcodingcompany/filament-socialite

Social login for Filament through Laravel Socialite

213914.9k9](/packages/dutchcodingcompany-filament-socialite)[pboivin/filament-peek

Full-screen page preview modal for Filament

253319.6k12](/packages/pboivin-filament-peek)[croustibat/filament-jobs-monitor

Background Jobs monitoring like Horizon for all drivers for FilamentPHP

254255.2k6](/packages/croustibat-filament-jobs-monitor)[guava/filament-knowledge-base

A filament plugin that adds a knowledge base and help to your filament panel(s).

206120.5k1](/packages/guava-filament-knowledge-base)[dotswan/filament-map-picker

Easily pick and retrieve geo-coordinates using a map-based interface in your Filament applications.

124139.3k2](/packages/dotswan-filament-map-picker)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
