Documentation 👉 hono.dev
v3 has been released! Migration guide
Hono - [炎] means flame🔥 in Japanese - is a small, simple, and ultrafast web framework for the Edges. It works on any JavaScrip runtime: Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, Vercel, Lagon, AWS Lambda, and Node.js.
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 router
RegExpRouter
is really fast. Not using linear loops. Fast. - Lightweight 🪶 - The
hono/tiny
preset is under 12kB. Hono has zero dependencies and uses only the Web Standard API. - Multi-runtime 🌍 - Works on Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, Lagon, AWS Lambda, 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 🛠️ - Super clean APIs. First-class TypeScript support. Now, we've got "Types".
Benchmarks
Hono is the fastest, compared to other routers for Cloudflare Workers.
Hono x 402,820 ops/sec ±4.78% (80 runs sampled)
itty-router x 212,598 ops/sec ±3.11% (87 runs sampled)
sunder x 297,036 ops/sec ±4.76% (77 runs sampled)
worktop x 197,345 ops/sec ±2.40% (88 runs sampled)
Fastest is Hono
✨ Done in 28.06s.
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!
Authors
Yusuke Wada https://github.com/yusukebe
RegExpRouter, SmartRouter, LinearRouter, and PatternRouter are created by Taku Amano https://github.com/usualoma
License
Distributed under the MIT License. See LICENSE for more information.