BluetOpen source
What agents should know before contributing
honojs/hono
Web framework built on Web Standards
Read by Bluet from 3 files written for agents and 300 merged pull requests on 2026-09-24. Not reviewed by the maintainers.
Rules its files tell agents (4)
- docs/CONTRIBUTING.md
mustYou may use AI to contribute, but it must never waste a maintainer's time or make their work unpleasant.
- docs/MIGRATION.md
shouldDO NOT import middleware from hono/mod.ts.
- docs/MIGRATION.md
shouldDo not use interface.
You must use type to define the Generics for new Hono. Do not use interface.
- docs/MIGRATION.md
shouldDO NOT use c.req.parseBody for parsing JSON, text, or ArrayBuffer.
Decisions its pull requests settled (25)
- #4459Correct hop-by-hop header handling per RFC 9110
- #4717add progressive locale code truncation to normalizeLanguage
- #4504skip caching when `Vary: *` is present
- #4723return `string | undefined` from param() when path type is any
- #4915key cache entries by configured vary headers
- #4973expand "::" to eight zero groups
- #4998render the unspecified address binary as "::"
- #5025deduplicate Cache-Control directives case-insensitively
- #5119add first-class support for QUERY requests
- #5137set Vary: Accept-Encoding on negotiated responses
- #5141add a configurable WWW-Authenticate realm
- #5142add jwt and lambda authorizer types for API Gateway v2
- #5179allow a function component to return an array
- #5199resolve incorrect incremental hashing for chunked responses
- #5204render async children of document metadata tags instead of [object Promise]
- #5215send falsy JSON bodies
- #5222match If-None-Match tags with optional whitespace before the comma
- #5250exempt OPTIONS request from CSRF validation
- #5255support wildcard media types and specificity ordering in defaultMatch
- #5272skip an undefined entry inside a query array
- #5311skip accept entries with quality 0 when matching
- #5349treat the q parameter name as case-insensitive
- #5357clamp a negative q to 0, not 1
- #5376match media types and language tags case-insensitively
- #5377don't break responses with unparseable JSON bodies