Skip to content
HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP.
Erlang Makefile
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc/src Add the migration guide to 2.0 Sep 26, 2019
test Handle cow_http2_machine timeouts Feb 10, 2020
.gitignore Update and related changes Nov 16, 2016
LICENSE Update copyright years Jan 3, 2019
Makefile Gun 2.0.0-pre.1 Sep 27, 2019
README.asciidoc More README updates Sep 26, 2019 Update Jan 10, 2019



Gun is an Erlang HTTP client with support for HTTP/1.1, HTTP/2 and Websocket.


Gun aims to provide an easy to use client compatible with HTTP/1.1, HTTP/2 and Websocket. Gun can connect through any combination of Socks and HTTP proxies.

Gun is always connected. It will maintain a permanent connection to the server, reopening it as soon as the server closes it, saving time for the requests that come in.

All connections are supervised automatically, allowing developers to focus on writing their code without worrying.


The project is currently sponsored by Sameroom and Pleroma.

The now removed SPDY implementation was sponsored by LeoFS Cloud Storage.

Online documentation

Offline documentation

  • While still online, run make docs

  • User guide available in doc/ in PDF and HTML formats

  • Function reference man pages available in doc/man3/ and doc/man7/

  • Run make install-docs to install man pages on your system

  • Full documentation in Asciidoc available in doc/src/

Getting help

You can’t perform that action at this time.