About this project
CWIST (C Web development Is Still Trustworthy) is a C17 web framework and application server that bundles a full networking stack: HTTP/1.1, HTTP/2, HTTP/3 over QUIC, WebSocket, WebTransport, and hybrid post-quantum TLS using X25519MLKEM768. It provides an embedded SQLite ORM, an in-memory read-optimized database engine called Nuke DB, and automatic detection of PostgreSQL, MySQL, and MariaDB by wire-protocol fingerprinting.
The project offers two execution models selectable by environment variable. The C1M reactor mode uses io_uring on Linux (with epoll/kqueue fallbacks) for high-concurrency event-driven serving, while the classic pool mode assigns each connection its own thread for lower latency on typical request workloads. The README includes benchmark comparisons against Axum, Gin, and Spring Boot, covering throughput, latency percentiles, memory usage, and context switches, with the caveat that results depend on the CI runner CPU and load profile.
CWIST ships a command-line tool for scaffolding projects, hot reload during development, OpenAPI generation from Doxygen annotations, and protobuf/gRPC code generation. It supports gRPC unary and streaming routes, health and reflection services, retries, and load balancing. The framework also includes routing with Express-style parameters, middleware, structured logging, metrics and health endpoints, rate limiting, HTML/CSS/template rendering, and JSON utilities.
Installation is available by building from source with make or through a Homebrew tap. Dependencies such as BoringSSL, lsquic, libttak, and SQLite3 are vendored, and the static library can be linked directly or through pkg-config. Platform support covers Linux, macOS, and BSD.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.