Zig 0.16
Web framework
for Zig
Fast, minimal, built for systems.
HTTP, WebSockets, PostgreSQL, Templates — batteries included.
const std = @import("std"); const spider = @import("spider"); pub fn main(init: std.process.Init) !void { var server = spider.app(); defer server.deinit(); server .get("/", homeHandler) .listen(.{}) catch {}; } fn homeHandler(c: *spider.Ctx) !spider.Response { return c.json(., .{}); }
Everything you need
Click any card to see docs and examples
Router
Trie-based with dynamic params
/users/:idLogger
Structured JSON logging
Pooling
Connection & buffer pooling
Static Files
Built-in static file serving
Graceful Shutdown
Handles SIGINT / SIGTERM
Group Routes
Route prefixes via
.groupRequest
Params, JSON binding, form & query
Response
HTML, JSON, redirect, status, headers
Middleware
Chain via
server.use(fn)Templates
Variables, loops, if/else, extends
Docker
Official Zig image for fast builds
Testing
zig test . + zig fmt .