mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-14 20:30:23 +00:00
Small, fast, modern HTTP server for Erlang/OTP.
cowboyerlangfunctionalhigh-performancehttphttp-serverhttp2http2-serverhttpsproduction-readyrestwebweb-frameworkwebsocketwebsocket-serverwebsockets
![]() It was added to help with response body streaming functions. But it was a clumsy solution that we discarded in favor of passing socket and transport to said function. It was also very odd compared to the rest of the cowboy_req interface. If you used this function before, worry not, here's its proper equivalent. [Socket, Transport] = cowboy_req:get([socket, transport], Req) |
||
---|---|---|
doc | ||
examples | ||
guide | ||
src | ||
test | ||
.gitignore | ||
AUTHORS | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
LICENSE | ||
Makefile | ||
README.md | ||
rebar.config | ||
ROADMAP.md |
Cowboy
Cowboy is a small, fast and modular HTTP server written in Erlang.
Goals
Cowboy aims to provide a complete HTTP stack in a small code base. It is optimized for low latency and low memory usage, in parts because it uses binary strings.
Cowboy provides routing capabilities, selectively dispatching requests to handlers written in Erlang.
Because it uses Ranch for managing connections, Cowboy can easily be embedded in any other application.
No parameterized module. No process dictionary. Clean Erlang code.
Getting Started
- Read the guide
- Look at the examples in the
examples/
directory - Build API documentation with
make docs
; opendoc/index.html
Support
- Official IRC Channel: #ninenines on irc.freenode.net
- Mailing Lists
- Commercial Support