Cowboy is a high-performance HTTP server for Erlang and OTP. It is designed to handle web traffic with low memory usage and can be used as a standalone server or as an embedded networking library integrated directly into an existing application.
The project implements modern transport protocols, including HTTP/3, QUIC, and WebTransport, to enable faster connections and bidirectional data streaming. It also functions as a real-time communication server supporting Server-Sent Events for pushing asynchronous updates to clients.
Broad capabilities include path and content-type based request routing, static asset hosting with directory listings, and multipart file upload handling. The server provides security and traffic management through SSL/TLS encryption, basic authentication, cookie management, response body compression, and chunked transfer encoding.