shankar / laravel-firebase-eloquent
Lightweight Eloquent-like models for Firebase Database.
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/shankar/laravel-firebase-eloquent
Requires
- php: >=8.1
- illuminate/pagination: ^10.0|^11.0|^12.0
- illuminate/support: ^10.0|^11.0|^12.0
- kreait/laravel-firebase: ^6.0
This package is auto-updated.
Last update: 2025-11-15 13:23:48 UTC
README
Lightweight Eloquent-like models for Firebase Realtime Database with CRUD, where, whereIn, orderBy, limit, paginate, timestamps.
Supports Laravel 10/11/12.
Install (local path)
composer require shankar/laravel-firebase-db:@dev php artisan vendor:publish --tag=firebase-db-config
- Configure
.env:
FIREBASE_CREDENTIALS=/full/path/to/storage/app/firebase/credentials.json
FIREBASE_DATABASE_URL=https://your-project-id-default-rtdb.firebaseio.com
FIREBASE_DB_PER_PAGE=15
- Create a model:
use Shankar\FirebaseDb\Model; class User extends Model { protected string $collection = 'users'; protected array $fillable = ['name','email','age']; }
Usage
// Create $user = User::create(['name'=>'Shankar','email'=>'a@b.com','age'=>27]); // Find $u = User::find($user->id); // Update $u->update(['age'=>28]); // Delete $u->delete(); // Query $adults = User::where('age','>=',18)->orderBy('name')->limit(20)->get(); // whereIn + paginate $list = User::whereIn('status',['active','trial'])->orderBy('created_at','desc')->paginate(10);
Pagination returns a normal
LengthAwarePaginator, so in Blade just do:{{ $list->links() }}