2020-10-05 13:47:58 +07:00
2020-09-15 10:51:22 +07:00
2020-01-26 17:41:53 +07:00
2016-05-03 10:27:59 +02:00
2020-10-05 13:47:57 +07:00
2020-10-05 13:47:57 +07:00
2020-10-05 13:47:57 +07:00
2016-04-15 12:13:33 +02:00
2020-10-05 13:47:57 +07:00
2020-09-15 10:51:22 +07:00
2020-08-20 13:49:09 +07:00
2020-09-15 10:51:22 +07:00
2020-09-22 15:43:32 +03:00
2020-09-15 10:51:22 +07:00
2020-09-15 10:51:22 +07:00
2020-09-15 10:51:22 +07:00
2020-09-15 10:51:22 +07:00
2020-05-25 13:10:26 +07:00
2016-12-14 11:54:01 +01:00
2020-09-15 10:51:22 +07:00
2020-09-15 10:51:22 +07:00
2020-09-15 10:51:22 +07:00
2020-09-15 10:51:22 +07:00
2020-10-05 13:47:57 +07:00
2020-10-05 13:47:57 +07:00
2020-09-15 10:51:22 +07:00
2020-10-05 13:47:57 +07:00
2020-10-05 13:47:57 +07:00
2018-10-30 10:20:39 +07:00

A QUIC implementation in pure Go

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

quic-go is an implementation of the QUIC protocol in Go. It implements the IETF QUIC draft-29.

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.14+, 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.

Description
No description provided
Readme MIT 46 MiB
Languages
Go 99.8%
Shell 0.1%