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

Proxy Laravel Package

jenssegers/proxy

Lightweight proxy package for Laravel that forwards incoming HTTP requests to an upstream host and returns the response unchanged. Handy for mirroring APIs, avoiding CORS issues, or routing traffic between services with minimal configuration.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for a narrow proxy capability. Decide whether a small forwarding layer is worth adopting as a tactical library versus a thin Laravel controller/Guzzle wrapper or an API gateway route. Given zero dependents and stale maintenance signals, the practical framing is borrow the pattern, don't inherit the dependency unless the scope is genuinely trivial and time-boxed.
  • Feature scoping for integrations. Supports low-risk use cases: hiding upstream API credentials server-side, avoiding browser CORS issues, centralizing a small set of outbound calls, or exposing a controlled server-side facade to a partner API. It is not a platform-level reverse proxy — it doesn't terminate TLS, pool connections, cache, enforce access control, or provide observability.
  • Roadmap classification. Helps place proxy work as either a short-term integration enabler or a platform capability. This package is only suitable for the former; anything production-grade requires hardening, SSRF defenses, rate limiting, monitoring, and a named owner — which means the roadmap item should be scoped and staffed as infrastructure, not as a library install.
  • Use-case validation. Appropriate for prototypes, demos, internal tools, and fixed-upstream integrations where the destination URL is known, configured, and allowlisted. Disqualifying for user-supplied destinations, high-traffic paths, streaming/large payloads, compliance-bound data flows, or security-sensitive public endpoints.
  • Risk and exit planning. Since it is effectively unmaintained (v3.1.0 bumps PHP to 7.1; no activity since), adoption should be paired with a vendoring/fork plan or a pre-agreed migration path to Guzzle middleware or a gateway route. This is a decision to contain the dependency, not to standardize on it.

When to Consider This Package

  • Consider it when you need a simple, time-boxed proxy inside a Laravel/PHP application and the upstream target is a fixed, config-driven, allowlisted URL.
  • Consider it as a reference implementation for how to forward requests, inject credentials, and return upstream responses in PHP — useful for a feasibility spike or as a pattern to copy into an internal UpstreamFetcher interface.
  • Consider it if the team is prepared to vendor or fork the small codebase, wrap it behind an internal abstraction, and own all security hardening, compatibility validation, and maintenance.
  • Avoid it when:
    • The target URL is user-influenced or per-request configurable (open-proxy / SSRF risk).
    • You need SSRF protection, header/cookie sanitization, redirect controls, TLS policy, rate limiting, caching, observability, or vendor support.
    • Traffic is meaningful, payloads are large, streaming matters, or sub-second latency is required.
    • Your stack already standardizes on Guzzle/PSR-18, an API gateway, nginx proxy_pass, Envoy, or a CDN edge proxy — the package adds dependency without adding capability.
    • You cannot budget ownership for a fork, or you need PHP 8.x/Laravel 9+ compatibility proven rather than assumed. Note the Laravel service provider and session cookie store live in a separate jenssegers/proxy-laravel package whose freshness must be checked independently.

How to Pitch It (Stakeholders)

  • Executives: This is a small, tactical proxy library that could accelerate a specific integration by hiding API keys and sidestepping CORS. It is not a strategic platform investment and should not be approved for security-sensitive, high-volume, or long-lived use without a named owner and a clear exit plan. Approve only for low-risk, time-boxed scenarios where the alternative is a custom wrapper or a gateway route — and expect the build option to win on risk-adjusted cost.
  • Engineering: The package offers a minimal forwarding API over Guzzle, but it is effectively unmaintained and lacks production hardening. If adopted, vendor or fork it, enforce a strict upstream allowlist outside the library, sanitize headers and cookies, set connect/total timeouts and response-size limits, audit redirect behavior, and add monitoring. Treat the README's language about "streaming" and "middleware" as overstated relative to the code. In most modern Laravel stacks, a Guzzle-based controller or gateway route is the safer and more instrumentable option.
  • Product recommendation: Use this as a pattern to borrow, not a dependency to trust. Run a one-to-two-day feasibility spike only after confirming fixed upstream targets and reviewing security constraints; make the build-vs-adopt call after that spike and the security gate, and expect to reimplement the small amount of logic in a wrapper you control.
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