Production Hono patterns — zValidator hooks, typed generics, error handling, middleware composition, testing, and multi-runtime deployment
87
80%
Does it follow best practices?
Impact
98%
2.57xAverage score across 5 eval scenarios
Passed
No known issues
{
"instruction": "Test Hono apps using the built-in app.request() method, not supertest",
"relevant_when": "Agent writes tests for a Hono API",
"context": "Hono provides app.request(path, init?) which returns a standard Web Response object. This works identically across all runtimes (Node, Bun, Deno, Cloudflare) because it uses Web Standards Request/Response. Do not use supertest -- it is an Express-specific library that requires a running HTTP server. With app.request(), tests are fast, portable, and require no server startup. The app definition should be in a separate file from the entry point so tests can import the app without starting a server.",
"sources": [
{
"type": "file",
"filename": "skills/hono-best-practices/SKILL.md",
"tile": "tessl-labs/hono-best-practices@0.2.0"
}
],
"checklist": [
{
"name": "use-app-request",
"rule": "Tests use app.request() to make requests -- not supertest, not node-fetch, not starting an HTTP server",
"relevant_when": "Agent writes tests for Hono routes"
},
{
"name": "separate-app-from-entry",
"rule": "The Hono app is defined and exported from a separate file (e.g. app.ts) so tests can import it without triggering server startup",
"relevant_when": "Agent structures a Hono project with tests"
}
]
}