PHPackages                             jpcaparas/laravel-http-socks5 - 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. jpcaparas/laravel-http-socks5

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

jpcaparas/laravel-http-socks5
=============================

Extends the Laravel HTTP service to allow for easy SOCKS5 proxying and provides the ability to debug the response.

v0.1.3(1y ago)212MITPHPPHP ^8.1

Since Jan 3Pushed 1y ago1 watchersCompare

[ Source](https://github.com/jpcaparas/laravel-http-socks5)[ Packagist](https://packagist.org/packages/jpcaparas/laravel-http-socks5)[ RSS](/packages/jpcaparas-laravel-http-socks5/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (6)Versions (5)Used By (0)

Laravel HTTP client macro for SOCKS5 proxying
=============================================

[](#laravel-http-client-macro-for-socks5-proxying)

[![Tests](https://github.com/jpcaparas/laravel-http-socks5/actions/workflows/tests.yml/badge.svg)](https://github.com/jpcaparas/laravel-http-socks5/actions/workflows/tests.yml/badge.svg)

This package extends the Laravel HTTP service to allow for easy, parameterised SOCKS5 proxying

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

[](#installation)

You can install the package via composer:

```
composer require jpcaparas/laravel-http-socks5
```

Usage
-----

[](#usage)

### Registering the Service Provider

[](#registering-the-service-provider)

Add the service provider to your `config/app.php`:

```
'providers' => [
    // ...
    JPCaparas\Socks5Proxy\Socks5ProxyServiceProvider::class,
],
```

### Setting up the SOCKS5 Proxy

[](#setting-up-the-socks5-proxy)

To use the SOCKS5 proxy, you can utilize the fluent interface:

```
use Illuminate\Support\Facades\Http;

$response = Http::socks5()
    ->setHost('proxy.example.com')
    ->setPort(1080)
    ->setCredentials('username', 'password')
    ->get('http://example.com');
```

### Method Chaining

[](#method-chaining)

You can chain multiple configuration methods:

```
use Illuminate\Support\Facades\Http;

$client = Http::socks5()
    ->setHost('proxy.example.com')
    ->setCredentials('username', 'password')
    ->withOptions([
        'debug' => true,
        'timeout' => 30
    ]);

$response = $client->post('https://api.example.com/data', [
    'key' => 'value'
]);
```

### Debugging the Response

[](#debugging-the-response)

Enable debugging to see detailed connection information:

```
use Illuminate\Support\Facades\Http;

$response = Http::socks5()
    ->setHost('proxy.example.com')
    ->setCredentials('username', 'password')
    ->withOptions(['debug' => true])
    ->get('http://example.com');
```

Tests
-----

[](#tests)

```
composer test
```

Trying it out
-------------

[](#trying-it-out)

You can experiment with the package using Laravel Tinker. First, run:

```
composer tinker
```

Then try this example (outputs detailed connection info):

```
$client = \Illuminate\Support\Facades\Http::socks5()
   ->setHost('amsterdam.nl.socks.nordhold.net')
   ->setCredentials('username', 'password');

$client->withOptions(['debug' => true])->get('https://www.google.com');
```

Example output:

```
* Host amsterdam.nl.socks.nordhold.net:1080 was resolved.
* IPv6: (none)
* IPv4: [REDACTED]
*   Trying [REDACTED]:1080...
* Host www.google.com:443 was resolved.
* IPv6: [REDACTED]
* IPv4: [REDACTED]
* SOCKS5 connect to [REDACTED]:443 (locally resolved)
* SOCKS5 request granted.
* Connected to amsterdam.nl.socks.nordhold.net port 1080
[...]
* SSL connection using TLSv1.3
* Server certificate verified
> GET / HTTP/1.1
Host: www.google.com
[...]
< HTTP/1.1 200 OK
< Date: Fri, 03 Jan 2025 08:14:37 GMT
[...]

```

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance41

Moderate activity, may be stable

Popularity8

Limited adoption so far

Community7

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 ~0 days

Total

4

Last Release

491d ago

PHP version history (2 changes)v0.1.0PHP ^8.0

v0.1.2PHP ^8.1

### Community

Maintainers

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

---

Top Contributors

[![jpcaparas](https://avatars.githubusercontent.com/u/2406808?v=4)](https://github.com/jpcaparas "jpcaparas (19 commits)")

---

Tags

laravelproxysocks5

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/jpcaparas-laravel-http-socks5/health.svg)

```
[![Health](https://phpackages.com/badges/jpcaparas-laravel-http-socks5/health.svg)](https://phpackages.com/packages/jpcaparas-laravel-http-socks5)
```

###  Alternatives

[spatie/crawler

Crawl all internal links found on a website

2.8k16.3M52](/packages/spatie-crawler)[namu/wirechat

A Laravel Livewire messaging app for teams with private chats and group conversations.

54324.5k](/packages/namu-wirechat)[georgeboot/laravel-echo-api-gateway

Use Laravel Echo with API Gateway Websockets

10435.5k](/packages/georgeboot-laravel-echo-api-gateway)[muhammadhuzaifa/telescope-guzzle-watcher

Telescope Guzzle Watcher provide a custom watcher for intercepting http requests made via guzzlehttp/guzzle php library. The package uses the on\_stats request option for extracting the request/response data. The watcher intercept and log the request into the Laravel Telescope HTTP Client Watcher.

98239.8k1](/packages/muhammadhuzaifa-telescope-guzzle-watcher)[api-platform/laravel

API Platform support for Laravel

59126.4k6](/packages/api-platform-laravel)[behamin/service-proxy

for proxy or sending requests to other services with useful utilities

102.2k](/packages/behamin-service-proxy)

PHPackages © 2026

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