A minimal, zero-bloat web framework designed for modern C++ environments. Fast, structural, and strictly typed.
Vermell is a web framework for modern C++ environments: one header to include, one static library to link, and nothing else. No runtime, no garbage collector, no framework-specific DSL, no vendored dependencies — what you write is C++, and what runs is C++.
Under the hood it is an event-driven engine: a non-blocking epoll loop reads requests and hands work to a pool of worker threads. That split is what makes Vermell fast under load and resilient against slow clients.
Zero dependencies — only base Linux APIs (sockets, epoll, pthreads, fork/exec).
— only base Linux APIs (sockets, epoll, pthreads, fork/exec). One command to build — g++ -std=c++20 server.cpp -o exe -lvermell .
— . Any Linux with g++ — x86_64, ARM (aarch64, armv7), Android via Termux, WSL, Raspberry Pi, containers.
— x86_64, ARM (aarch64, armv7), Android via Termux, WSL, Raspberry Pi, containers. Hardened by default — timeouts, request caps, connection limits and a render jail are on out of the box.
— timeouts, request caps, connection limits and a render jail are on out of the box. In-tree JSON DOM — strict RFC 8259 parser and serializer, typed parameters, raw bodies, multipart uploads.
— strict RFC 8259 parser and serializer, typed parameters, raw bodies, multipart uploads. C++ templates — compose() modules and render() variables.
— modules and variables. Fluent configuration — one configure({...}) call or chainable setters, readable at runtime.
... continue reading