PHPackages                             facebook/hack-http-request-response-interfaces - 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. facebook/hack-http-request-response-interfaces

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

facebook/hack-http-request-response-interfaces
==============================================

Common interface for HTTP messages

v0.3(6y ago)1155.8k↓50%8[4 issues](https://github.com/hhvm/hack-http-request-response-interfaces/issues)9HackCI passing

Since Nov 14Pushed 3y ago19 watchersCompare

[ Source](https://github.com/hhvm/hack-http-request-response-interfaces)[ Packagist](https://packagist.org/packages/facebook/hack-http-request-response-interfaces)[ Docs](https://github.com/facebookexperimental/hack-http-request-response-interfaces)[ RSS](/packages/facebook-hack-http-request-response-interfaces/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (2)Versions (4)Used By (9)

Hack HTTP Request and Response Interfaces
=========================================

[](#hack-http-request-and-response-interfaces)

This project aims to create standard request and response interfaces for Hack, using [PSR-7](http://www.php-fig.org/psr/psr-7/) as a starting point.

This project is nearing a stable v1.0 release.

Motivation
----------

[](#motivation)

PSR-7 was designed for PHP, not Hack, and some descisions do not fit smoothly with Hack's type system.

We would like agreement on a standardized interface before releasing v1.0 of several libraries that could and should use this.

Additionally, with the planned end of PHP support in HHVM, it will stop being possible to use the canonical definitions or common implementations of PSR-7 in Hack code.

Requirements
------------

[](#requirements)

HHVM 4.41 and above.

License
-------

[](#license)

By contributing to Hack HTTP Request and Response Interfaces, you agree that your contributions will be licensed under the LICENSE file in the root directory of this source tree.

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance13

Infrequent updates — may be unmaintained

Popularity37

Limited adoption so far

Community37

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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

Total

3

Last Release

2240d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/3757713?v=4)[Joel Marcey](/maintainers/JoelMarcey)[@JoelMarcey](https://github.com/JoelMarcey)

![](https://avatars.githubusercontent.com/u/601530?v=4)[Yang, Bo](/maintainers/Atry)[@Atry](https://github.com/Atry)

![](https://avatars.githubusercontent.com/u/727402?v=4)[Alexey Toptygin](/maintainers/alexeyt)[@alexeyt](https://github.com/alexeyt)

---

Top Contributors

[![fredemmott](https://avatars.githubusercontent.com/u/360927?v=4)](https://github.com/fredemmott "fredemmott (39 commits)")[![weierophinney](https://avatars.githubusercontent.com/u/25943?v=4)](https://github.com/weierophinney "weierophinney (33 commits)")[![usox](https://avatars.githubusercontent.com/u/5184763?v=4)](https://github.com/usox "usox (8 commits)")[![michaelcullum](https://avatars.githubusercontent.com/u/211740?v=4)](https://github.com/michaelcullum "michaelcullum (7 commits)")[![philsturgeon](https://avatars.githubusercontent.com/u/67381?v=4)](https://github.com/philsturgeon "philsturgeon (6 commits)")[![YuryBandarchuk16](https://avatars.githubusercontent.com/u/19752696?v=4)](https://github.com/YuryBandarchuk16 "YuryBandarchuk16 (4 commits)")[![garoevans](https://avatars.githubusercontent.com/u/1016708?v=4)](https://github.com/garoevans "garoevans (3 commits)")[![lexidor](https://avatars.githubusercontent.com/u/31805625?v=4)](https://github.com/lexidor "lexidor (3 commits)")[![ytake](https://avatars.githubusercontent.com/u/4454078?v=4)](https://github.com/ytake "ytake (3 commits)")[![evert](https://avatars.githubusercontent.com/u/178960?v=4)](https://github.com/evert "evert (2 commits)")[![mindplay-dk](https://avatars.githubusercontent.com/u/103348?v=4)](https://github.com/mindplay-dk "mindplay-dk (1 commits)")[![mouhamed](https://avatars.githubusercontent.com/u/3195102?v=4)](https://github.com/mouhamed "mouhamed (1 commits)")[![sagikazarmark](https://avatars.githubusercontent.com/u/1226384?v=4)](https://github.com/sagikazarmark "sagikazarmark (1 commits)")[![siwinski](https://avatars.githubusercontent.com/u/1034024?v=4)](https://github.com/siwinski "siwinski (1 commits)")[![localheinz](https://avatars.githubusercontent.com/u/605483?v=4)](https://github.com/localheinz "localheinz (1 commits)")[![creocoder](https://avatars.githubusercontent.com/u/896494?v=4)](https://github.com/creocoder "creocoder (1 commits)")[![cxj](https://avatars.githubusercontent.com/u/446131?v=4)](https://github.com/cxj "cxj (1 commits)")[![easy-system](https://avatars.githubusercontent.com/u/16887818?v=4)](https://github.com/easy-system "easy-system (1 commits)")[![geekwright](https://avatars.githubusercontent.com/u/3181636?v=4)](https://github.com/geekwright "geekwright (1 commits)")[![GrahamCampbell](https://avatars.githubusercontent.com/u/2829600?v=4)](https://github.com/GrahamCampbell "GrahamCampbell (1 commits)")

### Embed Badge

![Health badge](/badges/facebook-hack-http-request-response-interfaces/health.svg)

```
[![Health](https://phpackages.com/badges/facebook-hack-http-request-response-interfaces/health.svg)](https://phpackages.com/packages/facebook-hack-http-request-response-interfaces)
```

###  Alternatives

[friendsofsymfony/rest-bundle

This Bundle provides various tools to rapidly develop RESTful API's with Symfony

2.8k73.3M319](/packages/friendsofsymfony-rest-bundle)[php-http/discovery

Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations

1.3k309.5M1.2k](/packages/php-http-discovery)[pusher/pusher-php-server

Library for interacting with the Pusher REST API

1.5k94.8M293](/packages/pusher-pusher-php-server)[react/http

Event-driven, streaming HTTP client and server implementation for ReactPHP

78026.4M414](/packages/react-http)[php-http/curl-client

PSR-18 and HTTPlug Async client with cURL

48347.0M384](/packages/php-http-curl-client)[smi2/phpclickhouse

PHP ClickHouse Client

84310.1M71](/packages/smi2-phpclickhouse)

PHPackages © 2026

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