Skip to content

Release v1.0.0

Choose a tag to compare

@AmazingBV AmazingBV released this 07 Apr 13:56
· 18 commits to master since this release

Full Changelog: https://github.com/AmazingBV/laravel-google-sheets-database-driver/commits/1.0.0

Laravel Google Sheets Database Driver v1.0.0

First stable release of amazingbv/laravel-google-sheets-database-driver.

This package adds a Laravel database driver that uses a Google Sheets spreadsheet as its backing store, with support for Laravel-style schema operations, migrations, query builder usage, Eloquent models, and Google Sheets-aware operational behavior.

Highlights

  • Added a custom google-sheets Laravel database connection
  • Added support for DB, Eloquent, Schema, and migrations
  • Added automatic hidden internal tabs for schema metadata and migration tracking
  • Added a visible Database Index tab as the first tab in the spreadsheet
  • Added service-account based Google Sheets API integration
  • Added quota-aware throttling, retries, and connection-level read caching
  • Added auto-healing for stale metadata and stale create-table migration logs
  • Added migration-friendly handling for indexes and constraints by ignoring them instead of failing
  • Added no-op transaction behavior so Laravel internals such as queue workers do not crash
  • Added full README documentation, MIT license, Packagist badge, and project header image

Notes

  • This is a pragmatic Google Sheets driver, not a full SQL database replacement
  • Indexes, foreign keys, and relational constraints are not enforced by Google Sheets
  • Transactions are treated as Laravel-compatible no-op control flow, without atomic guarantees
  • Best suited for small datasets, low write concurrency, internal tooling, and spreadsheet-driven workflows

Installation

composer require amazingbv/laravel-google-sheets-database-driver:^1.0

Configuration

Example .env:

DB_CONNECTION=google-sheets
DB_DATABASE=your-google-spreadsheet-id
GOOGLE_SHEETS_CREDENTIALS_PATH=/absolute/path/to/service-account.json

GOOGLE_SHEETS_CACHE_STORE=file
GOOGLE_SHEETS_CACHE_TTL=60

GOOGLE_SHEETS_QUOTA_RETRY_ATTEMPTS=5
GOOGLE_SHEETS_QUOTA_RETRY_BASE_DELAY_MS=1000
GOOGLE_SHEETS_QUOTA_RETRY_MAX_DELAY_MS=10000
GOOGLE_SHEETS_READ_REQUESTS_PER_MINUTE=50
GOOGLE_SHEETS_WRITE_REQUESTS_PER_MINUTE=45

Then run:

php artisan sheets:install
php artisan migrate --database=google-sheets

Thanks

This release establishes the initial stable foundation for using Google Sheets as a lightweight Laravel database backend.