# nghttp2/nghttp2

nghttp2 - HTTP/2 C Library and tools

Repository: https://github.com/nghttp2/nghttp2
Canonical: https://ross.abutalabs.com/products/nghttp2
Homepage: https://nghttp2.org
Language: C++
License: NOASSERTION
License Family: other
Topics: c, http2, http3, quic, cpp20
Last push: 2026-08-24T12:41:32+00:00

## Health v2 (maintenance only)
Score: 94/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 83, longevity 100
- inputs: {"age_days": 4796, "days_push": 9, "days_rel": 35, "gap_med": 89.0, "n_releases_24m": 9}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 5046, forks 945 (observed 2026-08-28T04:09:08.896127+00:00)

## What it is
nghttp2 is a mature C library implementing the HTTP/2 framing layer and HPACK header compression, plus client, server, proxy, and load-testing tools built on top. It also supports HTTP/3/QUIC in its proxy and benchmarking tools and is widely used as the HTTP/2 implementation in other software.

## Use cases
- implement http/2 protocol support in a c or c++ application
- encode and decode hpack header compression
- run a reverse proxy that speaks http/2 and http/3
- load test and benchmark an http/2 server
- test http/2 client behavior against a reference server

## When to choose
- you need a battle-tested, spec-compliant HTTP/2 framing library in C
- you want HPACK encoder/decoder as a public API
- you need HTTP/2 or HTTP/3 load testing with h2load
- you want a high-performance reverse proxy with HTTP/3 support

## When to avoid
- you only need a high-level HTTP client in a scripting language
- you want a full-featured application web server rather than a protocol library
- your project cannot link native C libraries

## Facets
- artifact type: library
- maturity: stable
- function: http-server, http-client, proxy, benchmarking, serialization
- domain: web-development, networking, performance, developer-tools
- platform: windows, cross-platform, cpp, c
- tags: http2, http3, quic, hpack, load-testing, reverse-proxy, linux, macos

## Member repositories
- nghttp2/nghttp2 (main) score 94

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:08.896127+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:17:22.843243+00:00, confidence not recorded.
  - readme: https://github.com/nghttp2/nghttp2 (fetched 2026-08-28T04:09:08.896127+00:00, sha 5d2c81ec4c32)
  - homepage: https://nghttp2.org (fetched 2026-08-29T08:57:57.570004+00:00, sha fad4f077f81a)
  - site_page: https://nghttp2.org/documentation (fetched 2026-08-29T08:57:57.572528+00:00, sha 12b3f12750a5)
  - site_page: https://nghttp2.org/documentation/nghttp.1.html (fetched 2026-08-29T08:57:57.574582+00:00, sha 576803637d09)
  - site_page: https://nghttp2.org/documentation/nghttpd.1.html (fetched 2026-08-29T08:57:57.577658+00:00, sha 73f1295f0987)
  - site_page: https://nghttp2.org/documentation/nghttpx.1.html (fetched 2026-08-29T08:57:57.580353+00:00, sha 366f8ae92e90)
  - site_page: https://nghttp2.org/documentation/h2load.1.html (fetched 2026-08-29T08:57:57.584491+00:00, sha dba269700ddd)
  - site_page: https://nghttp2.org/documentation/apiref.html (fetched 2026-08-29T08:57:57.586387+00:00, sha 3b311e14cf96)
  - site_page: https://nghttp2.org/documentation/tutorial-hpack.html (fetched 2026-08-29T08:57:57.588081+00:00, sha f50ed71dea8e)
- Data as of 2026-08-30T08:39:29.467469+00:00.
