aporat/laravel-firebase-app-check
Laravel integration for Firebase App Check, helping protect your backend from abuse by verifying requests from legitimate app clients. Adds configuration and middleware for validating App Check tokens on incoming requests.
Architecture fit
firebase-app-check), so it slots into the existing kernel/route-group model rather than introducing a new request pipeline. Low architectural intrusion.IdTokenVerifier/Identity means one dependency covers both client attestation and user identity, potentially replacing a heavier Firebase SDK dependency for auth-only use cases.skipWhen, resolveProjectUsing, rejectUsing, reportUsing) allow policy and telemetry without forking — a strong signal for long-term maintainability.Integration feasibility
AppCheck::fake() and IdTokenVerifier::fake() with recorded verifications and assertions means the test story is solved on day one — no live Firebase calls in CI.Technical risk
file or array caching, enforcement becomes per-node and inconsistent. This is the highest-severity misconfiguration risk.rejectUsing controls the response shape, not the fail-open/closed decision.Key questions
resolveProjectUsing behave when a request is ambiguous or the alias is missing?skipWhen be combined safely with auth middleware ordering, and is the ordering documented?Stack fit
reportUsing hooks into the existing logging/Sentry pipeline, so verdicts become observable without new tooling.rejectUsing lets us match the existing API error contract, which matters because mobile clients need to distinguish "refresh your token and retry" from "you are not allowed."Migration path
skipWhen so older app versions without App Check are not broken. Enforcement must lag the app-store rollout by at least one full adoption cycle — typically 2–3 release trains for a consumer app.IdTokenVerifier is a separate, optional migration and should not be bundled with the App Check rollout. Keep the two changes independently revertable.Compatibility
rejectUsing output shape must be validated against existing mobile error handling before hard mode — a 403 where the client expects 401 generates support load.file in staging will produce misleading rollout data.Sequencing
IdTokenVerifier separately as an auth consolidation project.Maintenance
Support
Scaling
Failure modes
Ramp-up
How can I help you explore Laravel packages today?