apple/swift-nio-http2

HTTP/2 support for SwiftNIO

503

stars

494

commits

Swift

primary language

Sep 9, 2026

updated

swiftpackageindex.com/apple/swift-nio-http2/main/documentation/niohttp2
async
beta
http2
swift5
swiftnio
Browse cluster: Swift server-side networking

README

SwiftNIO HTTP/2

This project contains HTTP/2 support for Swift projects using SwiftNIO. To get started, check the API docs.

Building

swift-nio-http2 is a SwiftPM project and can be built and tested very simply:

$ swift build
$ swift test

Versions

Just like the rest of the SwiftNIO family, swift-nio-http2 follows SemVer 2.0.0 with a separate document declaring SwiftNIO's Public API.

swift-nio-http2 1.x

swift-nio-http2 versions 1.x are a pure-Swift implementation of the HTTP/2 protocol for SwiftNIO. It's part of the SwiftNIO 2 family of repositories and does not have any dependencies besides swift-nio and Swift 5. As the latest version, it lives on the main branch.

To depend on swift-nio-http2, put the following in the dependencies of your Package.swift:

.package(url: "https://github.com/apple/swift-nio-http2.git", from: "1.19.2"),

The minimum Swift version supported for SwiftNIO HTTP/2 releases are detailed below:

SwiftNIO HTTP/2Minimum Swift Version
1.0.0 ..< 1.18.05.0
1.18.0 ..< 1.21.05.2
1.21.0 ..< 1.23.05.4
1.24.0 ..< 1.27.05.5.2
1.27.0 ..< 1.29.05.6
1.29.0 ..< 1.31.05.7
1.31.0 ..< 1.37.05.8
1.37.0 ..< 1.39.05.9
1.39.0 ..< 1.43.06.0
1.43.0 ..<6.1

swift-nio-http2 0.x

The legacy swift-nio-http 0.x is part of the SwiftNIO 1 family of repositories and works on Swift 4.1 and newer but requires nghttp2 to be installed on your system. The source code can be found on the nghttp2-support-branch.

Developing SwiftNIO HTTP/2

For the most part, SwiftNIO development is as straightforward as any other SwiftPM project. With that said, we do have a few processes that are worth understanding before you contribute. For details, please see CONTRIBUTING.md in this repository.

Contributors

(top 30 of 43)

Lukasa

190 commits

glbrntt

90 commits

rnro

54 commits

weissi

42 commits

apple/swift-nio-http2

HTTP/2 support for SwiftNIO

503

stars

494

commits

Swift

primary language

Sep 9, 2026

updated

swiftpackageindex.com/apple/swift-nio-http2/main/documentation/niohttp2
async
beta
http2
swift5
swiftnio
Browse cluster: Swift server-side networking

README

SwiftNIO HTTP/2

This project contains HTTP/2 support for Swift projects using SwiftNIO. To get started, check the API docs.

Building

swift-nio-http2 is a SwiftPM project and can be built and tested very simply:

$ swift build
$ swift test

Versions

Just like the rest of the SwiftNIO family, swift-nio-http2 follows SemVer 2.0.0 with a separate document declaring SwiftNIO's Public API.

swift-nio-http2 1.x

swift-nio-http2 versions 1.x are a pure-Swift implementation of the HTTP/2 protocol for SwiftNIO. It's part of the SwiftNIO 2 family of repositories and does not have any dependencies besides swift-nio and Swift 5. As the latest version, it lives on the main branch.

To depend on swift-nio-http2, put the following in the dependencies of your Package.swift:

.package(url: "https://github.com/apple/swift-nio-http2.git", from: "1.19.2"),

The minimum Swift version supported for SwiftNIO HTTP/2 releases are detailed below:

SwiftNIO HTTP/2Minimum Swift Version
1.0.0 ..< 1.18.05.0
1.18.0 ..< 1.21.05.2
1.21.0 ..< 1.23.05.4
1.24.0 ..< 1.27.05.5.2
1.27.0 ..< 1.29.05.6
1.29.0 ..< 1.31.05.7
1.31.0 ..< 1.37.05.8
1.37.0 ..< 1.39.05.9
1.39.0 ..< 1.43.06.0
1.43.0 ..<6.1

swift-nio-http2 0.x

The legacy swift-nio-http 0.x is part of the SwiftNIO 1 family of repositories and works on Swift 4.1 and newer but requires nghttp2 to be installed on your system. The source code can be found on the nghttp2-support-branch.

Developing SwiftNIO HTTP/2

For the most part, SwiftNIO development is as straightforward as any other SwiftPM project. With that said, we do have a few processes that are worth understanding before you contribute. For details, please see CONTRIBUTING.md in this repository.

Contributors

(top 30 of 43)

Lukasa

190 commits

glbrntt

90 commits

rnro

54 commits

weissi

42 commits

Languages

Swift

98.8%