PHPackages                             wimski/curl - 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. wimski/curl

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

wimski/curl
===========

A simple wrapper for cURL to use with DI and OOP

1.0.0(3y ago)06761MITPHPPHP ^8.1

Since Oct 19Pushed 3y ago1 watchersCompare

[ Source](https://github.com/wimski/curl)[ Packagist](https://packagist.org/packages/wimski/curl)[ Docs](https://github.com/wimski/curl)[ RSS](/packages/wimski-curl/feed)WikiDiscussions master Synced today

READMEChangelog (1)Dependencies (3)Versions (2)Used By (1)

[![PHPStan](https://github.com/wimski/curl/actions/workflows/phpstan.yml/badge.svg)](https://github.com/wimski/curl/actions/workflows/phpstan.yml)[![PHPUnit](https://github.com/wimski/curl/actions/workflows/phpunit.yml/badge.svg)](https://github.com/wimski/curl/actions/workflows/phpunit.yml)[![Coverage Status](https://camo.githubusercontent.com/a6f1a73143922f537b406cdffc4b353cc800ad9f7ecc710cc9aa0d78bf9cff08/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f77696d736b692f6375726c2f62616467652e7376673f6272616e63683d6d6173746572)](https://coveralls.io/github/wimski/curl?branch=master)[![Latest Stable Version](https://camo.githubusercontent.com/b5d10bdd32e044fa8bed5417cb5999f008331d30530bc9a32f5ac7ffdcc1ab0f/687474703a2f2f706f7365722e707567782e6f72672f77696d736b692f6375726c2f76)](https://packagist.org/packages/wimski/curl)

cURL
====

[](#curl)

A simple wrapper for cURL to use with DI and OOP.

- [Changelog](#changelog)
- [Install](#install)
- [Usage](#usage)

Changelog
---------

[](#changelog)

[View the changelog.](./CHANGELOG.md)

Install
-------

[](#install)

```
composer require wimski/curl
```

Usage
-----

[](#usage)

```
use Wimski\Curl\CurlResourceFactory;

$curlResourceFactory = new CurlResourceFactory();

$curlResource = $curlResourceFactory->make('https://some-webserver.com/resource-to-request');

$response = $curlResource
    ->setOption(CURLOPT_RETURNTRANSFER, true)
    ->execute();

$curlResource->close();
```

Ideally you would set up a singleton binding for the factory in your framework's container and use DI.

```
use Wimski\Curl\Contracts\CurlResourceFactoryInterface;

class MyClass
{
    public function __construct(
        protected CurlResourceFactoryInterface $curlResourceFactory,
    ) {
    }

    public function getData(): string
    {
        $curlResource = $this->curlResourceFactory->make('https://some-webserver.com/resource-to-request');

        $response = $curlResource
            ->setOption(CURLOPT_RETURNTRANSFER, true)
            ->execute();

        $curlResource->close();

        return $response;
    }
}
```

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity55

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

Unknown

Total

1

Last Release

1354d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/12373573?v=4)[Wim Reckman](/maintainers/wimski)[@wimski](https://github.com/wimski)

---

Top Contributors

[![WimWidgets](https://avatars.githubusercontent.com/u/19149909?v=4)](https://github.com/WimWidgets "WimWidgets (5 commits)")

---

Tags

curl

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/wimski-curl/health.svg)

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

###  Alternatives

[rmccue/requests

A HTTP library written in PHP, for human beings.

3.6k37.1M282](/packages/rmccue-requests)[kriswallsmith/buzz

Lightweight HTTP client

2.0k32.2M467](/packages/kriswallsmith-buzz)[nategood/httpful

A Readable, Chainable, REST friendly, PHP HTTP Client

1.8k17.7M275](/packages/nategood-httpful)[mashape/unirest-php

Unirest PHP

1.3k10.1M164](/packages/mashape-unirest-php)[php-http/curl-client

PSR-18 and HTTPlug Async client with cURL

48349.4M456](/packages/php-http-curl-client)[smi2/phpclickhouse

PHP ClickHouse Client

84711.6M80](/packages/smi2-phpclickhouse)

PHPackages © 2026

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