PHPackages                             semperton/proxy - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. semperton/proxy

ActiveLibrary[HTTP &amp; Networking](/categories/http)

semperton/proxy
===============

Simple PHP proxy.

0.2.1(4y ago)231MITPHPPHP &gt;=7.1

Since Apr 20Pushed 3y agoCompare

[ Source](https://github.com/semperton/proxy)[ Packagist](https://packagist.org/packages/semperton/proxy)[ RSS](/packages/semperton-proxy/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (4)Dependencies (5)Versions (5)Used By (0)

[![Semperton](https://raw.githubusercontent.com/semperton/.github/main/readme-logo.svg)](https://github.com/semperton)Semperton Proxy
===============

[](#semperton-proxy)

Simple PSR-18 HTTP client based on PHP's native stream socket.

---

Installation
------------

[](#installation)

Just use Composer:

```
composer require semperton/proxy

```

Proxy requires PHP 7.1+

Usage
-----

[](#usage)

The client does not come with a PSR-17 request/response factory by itself. You have to provide one in the constructor.

```
use HttpSoft\Message\ResponseFactory;
use Semperton\Proxy\Client;

$client new Client(
	new ResponseFactory(), // any PSR-17 compilant response factory
	5, // request timeout in secs
	$options, // array of stream context options
	4096 // buffer size used to read/write request body
);
```

The client exposes only one public method `sendRequest`:

```
use HttpSoft\Message\RequestFactory;
use Psr\Http\Message\ResponseInterface;

$requestFactory = new RequestFactory();
$request = $requestFactory->createRequest('GET', 'https://google.com');

$response = $client->sendRequest($request);

$response instanceof ResponseInterface // true
```

Note
----

[](#note)

This is just a very simple HTTP client for single requests. If you are going to do heavy API work (multiple asynchronous requests, body parsing, etc.), you should consider using `guzzlehttp/guzzle` or `symfony/http-client`.

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~17 days

Total

4

Last Release

1801d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/c230ef7a9523812c63f2f7d403f43d748102a3980ce2db08a3563abc9b96fd83?d=identicon)[jrabausch](/maintainers/jrabausch)

---

Top Contributors

[![jrabausch](https://avatars.githubusercontent.com/u/38224080?v=4)](https://github.com/jrabausch "jrabausch (30 commits)")

---

Tags

http-clientphpproxypsr-18semperton

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Type Coverage Yes

### Embed Badge

![Health badge](/badges/semperton-proxy/health.svg)

```
[![Health](https://phpackages.com/badges/semperton-proxy/health.svg)](https://phpackages.com/packages/semperton-proxy)
```

###  Alternatives

[league/uri-interfaces

Common tools for parsing and resolving RFC3987/RFC3986 URI

538204.9M23](/packages/league-uri-interfaces)[shopify/shopify-api

Shopify API Library for PHP

4634.8M16](/packages/shopify-shopify-api)[laudis/neo4j-php-client

Neo4j-PHP-Client is the most advanced PHP Client for Neo4j

184616.9k31](/packages/laudis-neo4j-php-client)[phpro/http-tools

HTTP tools for developing more consistent HTTP implementations.

28137.8k](/packages/phpro-http-tools)[art4/requests-psr18-adapter

Use WordPress/Requests as a PSR-18 HTTP client

153.3k](/packages/art4-requests-psr18-adapter)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
