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

Laravel Plugin Laravel Package

saloonphp/laravel-plugin

Official Laravel integration for Saloon, the PHP HTTP client. Wire API integrations into Laravel with service provider and facade support, Laravel HTTP client sending, configuration, events, and testing helpers, making it easy to build and test robust API clients in your app.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: saloonphp/laravel-plugin is a thin Laravel integration layer around saloonphp/saloon, not a standalone HTTP client. It contributes service-provider registration, a facade, configuration publishing, Artisan generators (saloon:connector, saloon:request, saloon:response, saloon:plugin, saloon:auth, saloon:list), Laravel-oriented testing helpers, and optional observability middleware for Telescope, Pulse, and Nightwatch. Architecturally, this fits Laravel applications that want contract-driven API integrations, dependency injection, centralized configuration, queue-friendly request execution, and standardized testing. The plugin’s runtime surface is small, so lock-in is moderate rather than severe; the real dependency is Saloon’s connector/request model rather than this package.

For a TPM, the value proposition is developer throughput and consistency: fewer bespoke Guzzle wrappers, faster onboarding to third-party APIs, and observability hooks that make external calls visible. It is most compelling for teams with several B2B/SaaS integrations, payment gateways, or internal service clients. It is less compelling for a single trivial HTTP call or for teams unwilling to adopt Saloon’s abstractions.

Integration feasibility: Low technical effort to trial. Composer installation, Laravel package auto-discovery, optional config publishing, and generated class stubs make a one-day spike realistic. Existing Laravel conventions are preserved, and integration code can live under app/Integrations or a configured path. Testing support via Saloon fakes/global mock client is a meaningful productivity gain.

The adoption signal is the main concern. Seventy-nine stars and reported zero dependents suggest limited external validation, even if “dependents” undercounts private usage. The package is described as official for Saloon, which helps, but it is not a first-party Laravel package and does not carry Laravel’s support SLA. Release metadata also warrants scrutiny: the listed latest release date is in the future relative to normal release cadence, and the release history spans major versions v1 through v5 with Saloon v3, v4, and v5 migrations. That is a lot of major-version churn for a small integration layer.

Technical risk: The primary risks are dependency-chain volatility and upgrade coupling. The plugin’s compatibility is tied to both Laravel and Saloon majors; release notes show Laravel 10, 11, 12, and 13 compatibility work, PHP 8.5 support, and migrations from Saloon v3 to later majors. A Laravel or Saloon upgrade can therefore force a plugin upgrade, and vice versa. The observability middleware adds useful production visibility but also expands the failure surface: release notes reference Telescope response parsing fixes, HAL+JSON handling, duplicate Nightwatch middleware registration, sensitive-data handling, and integration-path fixes. These are normal maintenance issues, but they matter for teams expecting “install and forget.”

Generated code is another governance risk. Artisan generators improve consistency, but without review standards they can produce inconsistent auth, retry, pagination, and error-handling patterns across teams. The plugin should be treated as a scaffold and observability adapter, not as a substitute for API integration design review.

Key questions:

  • Which Saloon major and Laravel/PHP versions are actually supported by the intended plugin major? Is v5 stable, and why is v5.0.1 present without a clear v5.0.0 release note in the supplied history?
  • What is the maintenance model and expected response time for issues? Is this a community project with best-effort support or a formally supported Saloon component?
  • Can the team adopt Saloon core directly with a minimal in-house service provider if the plugin becomes stale? What is the exit cost?
  • What sensitive-data controls exist for Telescope, Pulse, and Nightwatch capture, and are they sufficient for PII, tokens, and payment data?
  • Is the reported zero-dependent count a metadata artifact or a genuine adoption signal? Are there reference production users?
  • Who owns dependency upgrades when Laravel, PHP, or Saloon releases a new major?

Integration Approach

Stack fit: Best fit is a Laravel 10+ application using Composer, service container, configuration, queues, and PHPUnit/Pest. The plugin should sit alongside existing Laravel HTTP infrastructure, not replace application-level domain services. Use it to standardize outbound API clients, authentication, retries, pagination, and test fakes. Keep business logic in application services; connectors and requests should remain transport contracts.

Migration path: Start with an inventory of raw Guzzle, Laravel Http facade, and ad-hoc SDK calls. Rank integrations by risk and change frequency. Pilot on one low-risk, read-only integration such as a status or catalog API. Create a connector and request classes using the plugin generators, cover them with contract tests and recorded fixtures, then run the new path behind a feature flag or in shadow mode against the existing client. Compare responses and error behavior before cutover. After the pilot, codify templates, naming, auth, retry, timeout, and logging standards before migrating higher-risk payment or customer-data integrations. Do not attempt a broad “big bang” replacement.

Compatibility: Pin the plugin, Saloon core, Laravel, and PHP versions explicitly. Build a CI matrix for the supported Laravel/PHP combinations and for the Saloon major in use. Verify the plugin major against the application’s framework version rather than assuming the latest release is appropriate. Treat the v3-to-v4-to-v5 history as evidence that major upgrades require planned work. Avoid adopting a new plugin major until its Saloon and Laravel support matrix is confirmed and a rollback path exists.

Sequencing:

  1. One-to-two-day technical spike: install, generate one connector/request, exercise auth and fakes, confirm Telescope/Pulse behavior in non-production.
  2. Architecture decision record: adopt or reject based on support model, version compatibility, and exit cost.
  3. Pilot one integration for one to two sprints with contract tests and production-like observability.
  4. Standardize generator output, code review checklist, and secret-handling rules.
  5. Production hardening: timeouts, retries with jitter, rate limits, circuit breaking, queue offloading, and redaction.
  6. Expand integration-by-integration with measurable delivery-cycle and incident comparisons.

TPM recommendation: Conditional go for a bounded pilot. The plugin is technically feasible and aligned with Laravel, but the low adoption signal and major-version churn argue against making it an unscoped platform standard on day one. Approve it where Saloon’s model already fits and a fallback to plain Saloon or raw HTTP is documented.

Operational Impact

Maintenance: Ongoing maintenance is mostly dependency management rather than plugin code maintenance. Expect periodic Composer updates, Laravel/PHP compatibility checks, and Saloon major migrations. Assign an owner and budget a small recurring upgrade allocation. Subscribe to releases and run composer audit and automated tests in CI. Pin minor versions for production and upgrade deliberately. Because the package is MIT-licensed and community-supported, there is no commercial SLA; support depends on GitHub responsiveness and the maintainers’ capacity.

Support: Internal support must cover connector design, auth/token rotation, retry policy, observability configuration, and secret redaction. The plugin’s Artisan commands and Laravel Boost/skill documentation reduce ramp-up, but they do not replace an internal standard. Establish a lightweight platform team or guild that owns templates, review, and upgrades. Avoid letting every product team invent its own Saloon conventions.

Scaling: Runtime scaling is primarily a function of Saloon, Guzzle/cURL, the upstream API, and application worker capacity, not this plugin. Scale outbound integrations through queued jobs, connection reuse, timeouts, bounded retries with backoff and jitter, rate limiting, and circuit breakers. Telescope and Pulse integration should be sampled or restricted in production to control storage and performance overhead. Nightwatch middleware should be verified for duplicate registration. For high-volume integrations, test connection pooling and worker concurrency explicitly.

Failure modes: Watch for upstream API contract changes, expired or misconfigured credentials, retry storms, missing timeouts, response parsing failures, and misconfigured integration paths. Release history shows past issues around integration paths outside app/, Telescope parsing of JSON content types, duplicate Nightwatch middleware, and auth stub correctness; these indicate the areas to cover with regression tests. Sensitive-data leakage through observability middleware is a material operational risk. Major-version upgrades can break service-provider assumptions, generated stubs, or middleware behavior. Low upstream adoption increases the risk of slower fixes for edge cases.

Ramp-up: A Laravel developer should become productive in one to two days using the generators and Saloon documentation, but fluency in Saloon’s connector/request/auth/middleware/testing model may take one to two weeks of real integration work. Provide a runbook covering connector creation, secrets, retries, timeouts, observability, testing with fakes, and upgrade procedures. Pair developers on the first production integration and require code review for generated classes. Measure pilot success by reduced boilerplate, test coverage of outbound calls, fewer integration defects, and time-to-first-working-request; use those results to decide whether to expand adoption.

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.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource