firevel/firequent

Limited implementation of Eloquent based on Firestore.

0.7.2 2020-08-27 13:01 UTC

This package is auto-updated.

Last update: 2021-05-27 14:30:58 UTC


README

Laravel Eloquent for Firestore.

Overview

Firequent is a Laravel Eloquent version modified to work with Google Firestore inside Google App Engine. Firestore got the capacity to handle very high loads, and it's very fast but it offers much fewer features than traditional SQL databases.

Known limitations

  • No incremental IDs. Instead random integer in range 1000000000000000 to 9007199254740991 (reason)
  • Firestore is NoSQL database so no schemas/migrate support.
  • Only simple where() queries (more info)
  • No relationships support (soon!)
  • No pagination (you should avoid using count() as counting is not supported by Firestore)
  • Learn more

Usage

  • Activate Firestore in you Google console (native mode)
  • Inside your model file replace use Illuminate\Database\Eloquent\Model; with use Firevel\Firequent\Model;
  • If you are running your app outside Google App Engine, you will need to set GOOGLE_APPLICATION_CREDENTIALS in your .env file (more)
  • Firestore is a NoSQL database, and it doesn't need migrations. Schemas are automatically generated from attributes.