quic-go

A QUIC implementation in pure go

Github stars Tracking Chart

A QUIC implementation in pure Go

Godoc Reference
Travis Build Status
CircleCI Build Status
Windows Build Status
Code Coverage
fuzzit

quic-go is an implementation of the QUIC protocol in Go. It roughly implements the IETF QUIC draft, although we don't fully support any of the draft versions at the moment.

Version compatibility

Since quic-go is under active development, there's no guarantee that two builds of different commits are interoperable. The QUIC version used in the master branch is just a placeholder, and should not be considered stable.

If you want to use quic-go as a library in other projects, please consider using a tagged release. These releases expose experimental QUIC versions, which are guaranteed to be stable.

Guides

We currently support Go 1.13+, with Go modules support enabled.

Running tests:

go test ./...

QUIC without HTTP/3

Take a look at this echo example.

Usage

As a server

See the example server. Starting a QUIC server is very similar to the standard lib http in go:

http.Handle("/", http.FileServer(http.Dir(wwwDir)))
http3.ListenAndServeQUIC("localhost:4242", "/path/to/cert/chain.pem", "/path/to/privkey.pem", nil)

As a client

See the example client. Use a http3.RoundTripper as a Transport in a http.Client.

http.Client{
  Transport: &http3.RoundTripper{},
}

Contributing

We are always happy to welcome new contributors! We have a number of self-contained issues that are suitable for first-time contributors, they are tagged with help wanted. If you have any questions, please feel free to reach out by opening an issue or leaving a comment.

Main metrics

Overview
Name With Ownerquic-go/quic-go
Primary LanguageGo
Program languageGo (Language Count: 3)
Platform
License:MIT License
所有者活动
Created At2016-04-06 20:16:27
Pushed At2025-07-14 21:25:47
Last Commit At2025-07-13 00:58:30
Release Count119
Last Release Namev0.53.0 (Posted on 2025-06-24 23:33:09)
First Release Namerace (Posted on 2016-08-06 14:45:04)
用户参与
Stargazers Count10.8k
Watchers Count213
Fork Count1.4k
Commits Count6.9k
Has Issues Enabled
Issues Count2156
Issue Open Count149
Pull Requests Count2720
Pull Requests Open Count39
Pull Requests Close Count332
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private