// the find
beste/firebase-php
Unofficial Firebase Admin SDK for PHP
An unofficial Firebase Admin SDK for PHP that wraps Auth, Realtime Database, Firestore, Cloud Messaging, Remote Config, Storage, and App Check behind a single Factory, so server-side PHP apps don't have to hand-roll REST calls and service-account JWT signing against Google's APIs. Aimed at PHP backend developers (including Laravel/Symfony via the companion packages) who need Firebase access from privileged environments.
Consistent per-service design: each Firebase product gets its own Contract interface, ApiClient, and a dedicated exception hierarchy with an ExceptionConverter mapping API error codes to typed exceptions (src/Exception/Auth, /Database, /Messaging, etc.) instead of forcing callers to parse raw HTTP responses. Primitives like Email, Uid, Url, and ClearTextPassword are wrapped as value objects in src/Value rather than passed around as bare strings. CI is more than a green badge - there are separate security-analysis and secure-tests workflows plus phpstan and rector configs, and docs are built via readthedocs rather than living only in the README.
Firestore support is a thin single-file wrapper (src/Firestore.php) around Google's own google/cloud-firestore client, so adopting it for Firestore means pulling in two overlapping dependency trees for one feature. NEXT_MAJOR_TODO.md and UPGRADE-8.0.md still sitting in repo root signal carried-over breaking-change debt that hasn't been fully resolved. It's a one-maintainer-driven unofficial SDK (the README's sponsor plea despite 1M+ monthly downloads is a bus-factor tell) tracking a moving target - Google's actual Firebase APIs - across seven services, which is a lot of surface to keep in sync. The org recently moved from kreait to beste while keeping the Kreait\Firebase namespace and kreait/firebase-php package name, which is a minor but real trust/provenance speed bump for new adopters checking who maintains this.