Hono

Ultrafast web framework for Cloudflare Workers, Deno, and Bun. Fast, but no...

README

Hono



Documentation :point_right: honojs.dev
v2.x has been released! Migration guide




GitHub Workflow Status
GitHub
npm
npm
npm type definitions
GitHub commit activity
GitHub last commit
Deno badge
Discord badge

Hono - _[炎] means flame🔥 in Japanese_ - is a small, simple, and ultrafast web framework for Cloudflare Workers, Deno, Bun, and others.

  1. ```ts
  2. import { Hono } from 'hono'
  3. const app = new Hono()

  4. app.get('/', (c) => c.text('Hono!!'))

  5. export default app
  6. ```

Features


- Ultrafast - The routers are really smart. Not using linear loops. The fastest one will be selected from three routers.
- Zero-dependencies - Using only Web Standard API. Does not depend on other npm or Deno libraries.
- Middleware - Hono has built-in middleware, custom middleware, and third-party middleware. Batteries included.
- TypeScript - First-class TypeScript support. Now, we've got "Types".
- Multi-runtime - Works on Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, or Node.js. The same code runs on all platforms.

Benchmarks


Hono is fastest, compared to other routers for Cloudflare Workers.

  1. ```plain
  2. Hono x 616,464 ops/sec ±4.76% (83 runs sampled)
  3. itty-router x 203,074 ops/sec ±3.66% (88 runs sampled)
  4. sunder x 314,306 ops/sec ±2.28% (87 runs sampled)
  5. worktop x 194,111 ops/sec ±2.78% (81 runs sampled)
  6. Fastest is Hono
  7.   Done in 30.77s.
  8. ```

Documentation


The documentation is available on honojs.dev.

Migration


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

License


Distributed under the MIT License. See LICENSE for more information.