Everything you need to learn, use, and extend CWIST, in suggested reading order.
- README — install, hello world, feature tour, benchmarks.
- Tutorial series — 30 hands-on modules; each directory
ships a runnable
main.c, aCMakeLists.txt, and a step-by-step guide. Start at 01-hello-world and follow the numbering; later modules assume earlier concepts.
Longer walkthroughs that combine several subsystems:
- Wasmtime appliance deployment - build, isolated state, restart verification, backup, and rollback of the WASI example.
- TLS certificate hot reload — rotate certs on a live listener without dropping connections; STEK/session-resumption behavior.
- Zero-downtime restart - SO_REUSEPORT socket handoff, drain sequence, systemd integration, HTTP/3 behavior.
- Prebuilt release assets - fat bundles per platform, amalgamation and cwist-wasm attached to every release.
- Build a CRUD blog with CWIST — routing + SQLite + JSON.
- NATS integration — messaging from handlers.
- WebTransport server — experimental HTTP/3 datagram/streams API.
- OpenAPI and Swagger UI - annotate routes,
generate
openapi.json, and serve an interactive docs page. - CWIST tutorial (single page) — the condensed one-file variant.
- API module index — per-module documentation under
docs/api/. - Flat quick reference — one-file listing of public calls.
- REFERENCE.md — architecture and behavioral reference.
- Runtime configuration — every
CWIST_*environment variable, its default, and what v4 promises about it. - Doxygen HTML — generated from
annotated public headers (
include/cwist/).
Self-contained demos under example/:
| Example | Demonstrates |
|---|---|
| simple-server | Minimal HTTP server |
| http | Step-by-step HTTP features |
| db / db-crypt | SQLite integration, transparent column encryption |
| jwt | Token issuing and verification |
| websocket / othello-web | WebSocket game server |
| rps-showcase | Static caching + throughput demo |
| json-builder, html, template | Rendering helpers |
| micro, mem, siphash, sstring | Core utilities |
| cde-json-viewer | JSON viewer app |
- Web server benchmark methodology — how the CI numbers in the README are produced.
- Soak testing — the sustained-load leak/degradation
gate for the v4.0 cut, with PASS/FAIL criteria (
scripts/ci/soak.sh). - benchmark-trends.svg / webserver-benchmark-trends.svg — historical CI trends.
- Mux router algorithm notes
- Release codename sequencing — sequential propagation rules and the API stability gate.
- ROADMAP.md — feature status and the v3.4 milestone plan.