A lightweight, header-only embedded HTTP server for C applications. Zero dependencies, maximum performance.
Just include http.h and you're ready. No complex build systems, no external libraries required.
Uses only the standard C library. Compiles anywhere with a C99 compiler.
Built-in path traversal protection, input validation, and safe buffer handling.
Static memory pools eliminate heap fragmentation. Perfect for embedded systems.
Works on Linux, macOS, Windows, and embedded platforms with POSIX support.
Serve static files with automatic MIME type detection and directory listing.
// Define implementation in ONE source file #define HTTP_IMPLEMENTATION #include "http.h" int main(void) { http_server_t server; // Initialize with defaults http_server_init(&server); // Start on port 8080 http_server_start(&server, 8080); return 0; }