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

Http Laravel Package

overtrue/http

overtrue/http provides a simple, expressive HTTP client for PHP, making GET/POST requests, JSON handling, headers, and response parsing easy. It works in standalone PHP and Laravel projects, offering a lightweight alternative to heavier HTTP clients.

Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for outbound HTTP plumbing. This is a ~thin DX layer, not infrastructure. The "buy" decision is cheap in license cost but carries an ownership cost: anything you adopt, you maintain. It supports the decision only where the alternative is hand-rolling request/response boilerplate.
  • Feature scoping for integrations. When a roadmap item is "talk to vendor X's REST API" (payments, KYC, logistics, CRM sync, webhooks), a chainable client wrapper shortens the time from ticket to working integration. This package competes with curl + hand-rolled helpers on speed of first commit.
  • Consistency across a polyglot PHP estate. If the org has non-Laravel PHP services (legacy monolith, internal CLI tools, a WordPress plugin, standalone SDK), a framework-agnostic wrapper with a Laravel-Http-like surface lets engineers carry one mental model across repos instead of three.
  • Prototype and internal-tooling spend. For throwaway scripts, admin back-office tools, and migration utilities, this is a defensible "good enough, ship it" choice where the lifecycle is measured in weeks.
  • Roadmap signal — not a platform bet. With ~125 stars and a last release in March 2022, this is a convenience dependency, never a strategic one. It should never appear on an architecture diagram or in a build-vs-buy review as a "framework choice."

When to Consider This Package

Consider it when all of the following hold:

  • The codebase is PHP outside Laravel 7+. Inside Laravel 7+, Illuminate\Support\Facades\Http already provides this ergonomics with first-party maintenance — this package is redundant there.
  • You want a small, chainable, framework-agnostic client and the team already knows the Laravel HTTP API shape, so onboarding is near-zero.
  • The integration is low-blast-radius: internal services, read-only vendor lookups, non-critical notifications. Not auth, not payments, not PII-bearing flows.
  • You are pinned and vendored — you accept that you own the dependency, that upstream fixes are unlikely, and that a security advisory in the underlying Guzzle stack is your problem to patch.

Look elsewhere when:

  • You are on Laravel 7+. Use the native HTTP client. Zero added dependency, first-party security response.
  • You need the raw HTTP layer. Use Guzzle directly (which this wraps). You lose the sugar, you gain a maintained dependency and full control over middleware, retries, and pools.
  • You need structured, testable API integrations. Saloon gives you request classes, connectors, auth, retry/backoff, and mocking as first-class citizens — a better fit once you have more than three endpoints.
  • You are on Symfony. Symfony HttpClient is maintained, PSR-18 compliant, and already in the stack.
  • You need PSR-18/PSR-7 interoperability. A wrapper's own API surface is a lock-in vector; standard interfaces are not.
  • Governance matters. Stale-since-2022, low star count, single-maintainer risk. If your org gates dependencies on maintenance activity or has an SBOM/remediation SLA, this will not clear review without an explicit exception.

How to Pitch It (Stakeholders)

To executives (one paragraph): This is a small convenience library that saves engineers a few hours per integration by making HTTP calls read cleanly. It costs nothing to license and is low-risk in the narrow places we'd use it. It is not a platform decision, it is unmaintained since 2022, and it should stay out of revenue-critical paths. Recommendation: allow it for internal tooling and prototypes, standardize on the framework's built-in HTTP client everywhere else, and do not let it become a dependency of record.

To engineering leads: Treat it as syntactic sugar over a maintained HTTP stack. Adopting it means we own it — no upstream patch cadence, no CVE response, one maintainer. If a team wants the ergonomics without the risk, the honest options are (a) Laravel's Http facade if we're on Laravel 7+, (b) Guzzle directly, or (c) a ~40-line internal helper that we control. Route new work to those; do not expand its footprint.

To the adopting team: If you proceed, contain it — wrap it behind our own thin client interface so swapping to Guzzle or Symfony HttpClient later is a one-file change, pin the version, and keep it off any request path that touches credentials or money.

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.
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons