91c04ac073
* refactor(utils/url): Decode parameters more accurately without performance degradation. * Add tests about getQueryParam and getQueryParams. * chore(bench): add query param bench * chore: denoify |
||
---|---|---|
.. | ||
adapter/deno | ||
client | ||
middleware | ||
router | ||
utils | ||
validator | ||
adapter.ts | ||
compose.ts | ||
context.ts | ||
hono.ts | ||
http-exception.ts | ||
LICENSE | ||
middleware.ts | ||
mod.ts | ||
README.md | ||
request.ts | ||
router.ts | ||
types.ts |
Documentation 👉 hono.dev
v3 has been released! Migration guide
Hono - [炎] means flame🔥 in Japanese - is a small, simple, and ultrafast web framework for the Edge. It works on Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, Vercel, Lagon, Node.js, and others. Fast, but not only fast.
import { Hono } from 'hono'
const app = new Hono()
app.get('/', (c) => c.text('Hono!'))
export default app
Quick Start
npm create hono@latest my-app
Features
- Ultrafast - The routers are really fast and smart. Not using linear loops. Fast.
- Multi-runtime - Works on Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, Lagon, or Node.js. The same code runs on all platforms.
- Batteries Included - Hono has built-in middleware, custom middleware, and third-party middleware. Batteries included.
- Delightful DX - First-class TypeScript support. Now, we've got "Types".
- Small - About 20kB. Zero-dependencies. Using only Web Standard API.
Benchmarks
Hono is the fastest, compared to other routers for Cloudflare Workers.
Hono x 385,807 ops/sec ±5.02% (76 runs sampled)
itty-router x 205,318 ops/sec ±3.63% (84 runs sampled)
sunder x 287,198 ops/sec ±4.90% (74 runs sampled)
worktop x 191,134 ops/sec ±3.06% (85 runs sampled)
Fastest is Hono
✨ Done in 27.51s.
Documentation
The documentation is available on hono.dev.
Migration
The migration guide is available on docs/MIGRATION.md.
Communication
Twitter and Discord channel are available.
Contributing
Contributions Welcome! You can contribute in the following ways.
- Create an Issue - Propose a new feature. Report a bug.
- Pull Request - Fix a bug and typo. Refactor the code.
- Create third-party middleware - Instruct below.
- Share - Share your thoughts on the Blog, Twitter, and others.
- Make your application - Please try to use Hono.
For more details, see docs/CONTRIBUTING.md.
Contributors
Thanks to all contributors! Especially, @metrue and @usualoma!
Author
Yusuke Wada https://github.com/yusukebe
"RegExpRouter" and "SmartRouter" are created by Taku Amano https://github.com/usualoma
License
Distributed under the MIT License. See LICENSE for more information.