Type-safe routes, Zod validation, and OpenAPI generation. Define your API with schemas, not decorators.
Hectoday HTTP chooses clarity over convenience.
Inbound request. Outbound response.
Nothing hidden. Nothing assumed.
Start here. The rest follows.
npm install @hectoday/httpMost frameworks abstract HTTP away. @hectoday/http does the opposite.
You work directly with Request, Response, headers, status codes and routing. So you actually learn how the web works, not just how to use a framework.
import { route, setup } from "@hectoday/http";
const app = setup({
handlers: [
route.get("/", {
resolve: () => new Response("Hello HTTP"),
}),
],
});
Deno.serve(app.fetch);No wrappers. No custom response objects. Just HTTP.
Learn the protocol. Then build the abstractions.
On Deno, @hectoday/http reaches 140–159k requests/sec — outperforming every Node.js framework, including bare node:http.
Built on Web Standards. Deno.serve speaks the same protocol natively. No translation layer. Near-zero overhead.
159k
req/sec on Deno
~4%
framework overhead
1–2µs
Zod validation cost
| Route | Deno.serve | @hectoday/http | Overhead |
|---|---|---|---|
| GET / | 159,018 | 143,651 | ~10% |
| GET /json | 154,254 | 158,882 | ~0% |
| GET /user/:id | 157,747 | 140,358 | ~11% |
Apple M4 Pro, macOS 15, Deno 2.7.4. Measured with wrk — 4 threads, 128 connections, 10s × 5 iterations.