aeronet¶
aeronet is a modular C++23 library for building fast HTTP/1.1, HTTP/2, and WebSocket servers and clients. It is designed for predictable performance, explicit control, and opt-in features - without hidden global state or macros.
What aeronet provides¶
- HTTP/1.1 server and client support, with keep-alive, streaming, trailers, compression, and static-file helpers.
- Optional TLS, HTTP/2, WebSocket, asynchronous handlers, OpenTelemetry, Glaze, and JWT modules.
- A portable event-loop abstraction for Linux, macOS, and Windows, while preserving Linux-focused performance features where available.
- A CMake-first integration model: enable only the modules your application needs.
Start with the path that matches your task¶
| I want to... | Start here |
|---|---|
| Build and consume the library | Installation and build |
| Select CMake features or tune runtime settings | Build configuration, server configuration, or client configuration |
| Run a minimal HTTP server | Your first server |
| Define routes and process requests | Routing and requests |
| Call a database or another service without blocking the server | Async handlers |
| Read requests and build responses | Requests and Responses |
| Stream a response or serve files | Streaming responses and Static files |
| Add authentication, rate limiting, or CORS | Middleware and CORS |
| Compress responses or accept compressed uploads | Compression |
| Run, stop, and update servers | Servers and lifecycle |
| Enable HTTPS or HTTP/2 | TLS and HTTP/2 |
| Add WebSocket support | WebSocket |
| Call other HTTP services | HTTP client |
| Authenticate requests with JSON Web Tokens | JWT |
| Load the server configuration from a file | JSON, YAML, and configuration files |
| Check a protocol behavior or status code | HTTP/1.1 conformance |
| Configure logging and telemetry | Observability and logging |
| Wire liveness and readiness checks | Health probes |
| Assemble a public, TLS, Kubernetes, or upstream-client profile | Production deployment patterns |
Documentation status¶
This site is the primary aeronet documentation. Guides explain common workflows, protocol and module pages document each feature in depth, and the references list every build option, configuration field, and HTTP behavior.