Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Google Api Bundle Laravel Package

endroid/google-api-bundle

Symfony bundle that integrates google/google-api-php-client into your app, letting you configure your application name and API key once and inject the ready-to-use client via the endroid.google_api_client service to access any Google API.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Framework-fit triage — reject on fit, not on merit. Despite arriving under a Laravel/PHP package request, this is a Symfony bundle: it registers through AppKernel::registerBundles(), a lifecycle Laravel does not have. The decision this package actually informs is "this is the wrong framework contract," which is a five-minute call rather than a scored evaluation.
  • Build vs. buy vs. integrate. There is no product capability to buy here. The package's entire value is registering google/google-api-php-client in a Symfony service container — glue measured in tens of lines. For a PM this collapses the build/buy trade-off: "build" (a Laravel service provider plus a config file) is cheaper than the coordination cost of adopting, vetting, and later replacing a third-party wrapper.
  • Roadmap dependency risk. Archived status, 2 GitHub stars, 0 dependents, and README-level maturity mean no CVE patches, no PHP 8+ work, and no response to upstream Google client changes. Any roadmap item built on it inherits an unmaintained dependency with a known expiry. That is a scheduling input, not just a technical footnote.
  • Legacy portfolio decisions. The one legitimate context is an inherited Symfony 2/3 application already shipping this bundle: lift-and-shift, or replace during the same migration? The PM-relevant answer is replace with the official client as part of the planned upgrade — cheaper to bundle into an existing migration than to carry forward and revisit.
  • Scoping Google-integration features (Sheets, Calendar, Drive, Gmail, "Sign in with Google"). The features are usually worth building; this package should not be the vehicle. The decision is which integration path — official SDK, Socialite for auth, or a thin HTTP client for a single endpoint — not whether to integrate Google at all.
  • Licensing/exit optionality. MIT makes a fork legally trivial, so the exposure is maintenance cost, not legal cost. That argues against panic-driven replacement and for scheduling replacement on normal roadmap cadence.

When to Consider This Package

Consider it only under narrow, time-boxed conditions:

  • You maintain an existing Symfony 2.x/3.x application that already depends on it and need a short-lived patch while a replacement is scheduled. Even then: pin the version, treat it as frozen, add a smoke test against the real API call.
  • You want a reference implementation for how someone wired the Google client into a DI container — read the source, don't take the dependency.
  • You are doing historical due diligence on an inherited codebase and need to explain why a transitive dependency is a liability. Note also that the repository points at a personal account (abandroid) rather than the upstream author named in the README (endroid) — verify provenance before touching it.

Look elsewhere — decisively — when any of the following holds:

  • The host application is Laravel. Bundles and service providers are different contracts; nothing here transfers to Laravel's provider/booting lifecycle.
  • You need a supported dependency. Archived repos ship no CVE fixes, PHP version bumps, or Guzzle major-version alignment, and this wrapper predates the Google client's more recent auth and packaging changes.
  • You need modern auth flows. OAuth 2.0 consent, service accounts, token refresh, and scope management are first-class in the official libraries and in Laravel Socialite for sign-in.
  • The integration surface is small. One Sheet append or one Calendar event is less code with a thin HTTP client and a service account than with any wrapper.
  • You need observability, retries, or rate-limit handling. Nothing here provides it; you'd build it anyway, making the wrapper pure overhead.

How to Pitch It (Stakeholders)

For executives (one paragraph): We evaluated endroid/google-api-bundle for Google API integration and recommend against adoption. It is an archived, effectively unused wrapper — two GitHub stars, zero dependent projects, documentation limited to a README — that adds a dependency without adding capability, since all of its functionality comes from Google's own supported client library. More importantly, it targets Symfony, not our Laravel stack, so adopting it would mean bending our architecture around an unmaintained component. The equivalent we'd write ourselves is measured in hours, not sprints, and the risk of the dependency is open-ended. Recommendation: no adoption; where a legacy system already uses it, schedule replacement alongside the next planned upgrade rather than treating it as an emergency.

For engineering (the technical case):

  • It's a wrapper, not a capability. The package exists to register google/google-api-php-client in a Symfony container. The Laravel equivalent is a singleton binding plus a config/google.php — roughly a day including tests.
  • The dependency is frozen. Archived + 0 dependents + README-only maturity means no PHP 8 guarantees, no Guzzle major-version alignment, and no reaction to upstream changes in Google's client. We'd be pinned to whatever happened to resolve at archive time, and old Symfony/PHP constraints will likely force downgrades elsewhere in our lockfile.
  • Wrong framework contract. AppKernel::registerBundles() is Symfony-specific and retired in favour of Flex; it does not map onto Laravel's lifecycle, so the "integration convenience" it advertises does not apply to us.
  • Recommended path. Official google/apiclient (or the specific google-cloud-* library for the API in question) behind our own thin service provider; laravel/socialite for Google sign-in; direct HTTP with a service account for single-endpoint cases. Credentials from environment/secret manager, never a committed JSON key.
  • If we inherit it. Isolate behind an interface, pin the version, add a smoke test exercising the actual API call, and file a replacement ticket with a target release. MIT makes forking legal — not advisable.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin