PHPackages                             hydrakit/nyholm - 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. [API Development](/categories/api)
4. /
5. hydrakit/nyholm

ActiveLibrary[API Development](/categories/api)

hydrakit/nyholm
===============

Nyholm PSR-7/PSR-17 adapter for the Hydra PHP framework

v0.2.0(yesterday)015—0%1MITPHP &gt;=8.2

Since Jul 2Compare

[ Source](https://github.com/hydra-foundation/nyholm)[ Packagist](https://packagist.org/packages/hydrakit/nyholm)[ RSS](/packages/hydrakit-nyholm/feed)WikiDiscussions Synced today

READMEChangelogDependencies (6)Versions (4)Used By (1)

Hydra Nyholm
============

[](#hydra-nyholm)

The one place the framework names a concrete PSR-7/PSR-17 implementation.

`hydrakit/http` is deliberately free of any PSR-7 vendor — it depends only on the PSR interfaces and defines a `ServerRequestProviderInterface` seam for building the incoming request from the environment. This package is the default adapter that fills that seam with [nyholm/psr7](https://github.com/Nyholm/psr7).

Usage
-----

[](#usage)

The app's composition root registers `NyholmServiceProvider` explicitly — this is the one line where an app names its PSR-7 vendor:

```
use Hydra\Nyholm\NyholmServiceProvider;

Kernel::application($container, $basePath)
    ->register(new NyholmServiceProvider)   // fills the PSR-7/17 seams
    ->register(new HttpServiceProvider(/* ... */))
    ->register(new AppServiceProvider);
```

The provider binds `Psr17Factory` (which implements every PSR-17 factory interface) as the `ResponseFactoryInterface`/`StreamFactoryInterface` the rest of the app resolves, and binds `ServerRequestProviderInterface` to the adapter:

```
use Hydra\Nyholm\NyholmRequestProvider;
use Nyholm\Psr7\Factory\Psr17Factory;

$factory  = new Psr17Factory;
$provider = NyholmRequestProvider::create($factory);

$request = $provider->fromGlobals(); // a PSR-7 ServerRequestInterface
```

Swapping it out
---------------

[](#swapping-it-out)

The kernel's `HttpServiceProvider` consumes only the PSR-17 factory interfaces and `Hydra\Http\Contracts\ServerRequestProviderInterface` — it binds no PSR-7 vendor. An app that prefers a different PSR-7 library simply doesn't require this package: it registers its own provider binding `ResponseFactoryInterface`, `StreamFactoryInterface`, and `ServerRequestProviderInterface` to its chosen implementation, in place of `NyholmServiceProvider` in the composition root. Nothing in the framework reaches for nyholm directly.

###  Health Score

39

—

LowBetter than 84% of packages

Maintenance100

Actively maintained with recent releases

Popularity8

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

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

Total

3

Last Release

1d ago

### Community

Maintainers

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

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/hydrakit-nyholm/health.svg)

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

###  Alternatives

[mollie/mollie-api-php

Mollie API client library for PHP. Mollie is a European Payment Service provider and offers international payment methods such as Mastercard, VISA, American Express and PayPal, and local payment methods such as iDEAL, Bancontact, SOFORT Banking, SEPA direct debit, Belfius Direct Net, KBC Payment Button and various gift cards such as Podiumcadeaukaart and fashioncheque.

60216.0M88](/packages/mollie-mollie-api-php)[moonshine/moonshine

Laravel administration panel

1.3k253.1k83](/packages/moonshine-moonshine)[getgrav/grav

Modern, Crazy Fast, Ridiculously Easy and Amazingly Powerful Flat-File CMS

15.6k86.4k1](/packages/getgrav-grav)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)[telnyx/telnyx-php

Official Telnyx PHP SDK — APIs for Voice, SMS, MMS, WhatsApp, Fax, SIP Trunking, Wireless IoT, Call Control, and more. Build global communications on Telnyx's private carrier-grade network.

35789.4k2](/packages/telnyx-telnyx-php)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M582](/packages/shopware-core)

PHPackages © 2026

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