2022-04-22 01:45:52 +02:00
|
|
|
<div align="center">
|
2023-02-16 15:18:34 +01:00
|
|
|
<a href="https://hono.dev">
|
2022-07-18 04:48:34 +02:00
|
|
|
<img src="https://raw.githubusercontent.com/honojs/hono/main/docs/images/hono-title.png" width="500" height="auto" alt="Hono"/>
|
2022-04-22 01:45:52 +02:00
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<hr />
|
2021-12-14 21:17:56 +01:00
|
|
|
|
2022-07-16 10:51:34 +02:00
|
|
|
<p align="center">
|
2023-02-16 15:18:34 +01:00
|
|
|
<a href="https://hono.dev"><b>Documentation :point_right: hono.dev</b></a><br />
|
2023-02-18 00:27:54 +01:00
|
|
|
<i>v3 has been released!</i> <a href="docs/MIGRATION.md">Migration guide</b>
|
2022-07-16 10:51:34 +02:00
|
|
|
</p>
|
|
|
|
|
|
|
|
<hr />
|
|
|
|
|
2022-12-20 22:42:27 +01:00
|
|
|
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/honojs/hono/ci.yml?branch=main)](https://github.com/honojs/hono/actions)
|
2022-07-18 04:48:34 +02:00
|
|
|
[![GitHub](https://img.shields.io/github/license/honojs/hono)](https://github.com/honojs/hono/blob/main/LICENSE)
|
2022-02-21 16:01:31 +01:00
|
|
|
[![npm](https://img.shields.io/npm/v/hono)](https://www.npmjs.com/package/hono)
|
2022-02-23 03:20:29 +01:00
|
|
|
[![npm](https://img.shields.io/npm/dm/hono)](https://www.npmjs.com/package/hono)
|
2023-02-14 14:50:58 +01:00
|
|
|
[![Bundle Size](https://img.shields.io/bundlephobia/min/hono)](https://bundlephobia.com/result?p=hono)
|
|
|
|
[![Bundle Size](https://img.shields.io/bundlephobia/minzip/hono)](https://bundlephobia.com/result?p=hono)
|
2022-02-21 16:01:31 +01:00
|
|
|
[![npm type definitions](https://img.shields.io/npm/types/hono)](https://www.npmjs.com/package/hono)
|
2022-04-26 10:15:16 +02:00
|
|
|
[![GitHub commit activity](https://img.shields.io/github/commit-activity/m/honojs/hono)](https://github.com/honojs/hono/pulse)
|
2022-07-18 04:48:34 +02:00
|
|
|
[![GitHub last commit](https://img.shields.io/github/last-commit/honojs/hono)](https://github.com/honojs/hono/commits/main)
|
2022-07-02 14:48:32 +02:00
|
|
|
[![Deno badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fdeno-visualizer.danopia.net%2Fshields%2Flatest-version%2Fx%2Fhono%2Fmod.ts)](https://doc.deno.land/https/deno.land/x/hono/mod.ts)
|
2022-09-15 02:53:03 +02:00
|
|
|
[![Discord badge](https://img.shields.io/discord/1011308539819597844?label=Discord&logo=Discord)](https://discord.gg/KMh2eNSdxV)
|
2022-02-21 16:01:31 +01:00
|
|
|
|
2023-04-08 11:34:03 +02:00
|
|
|
Hono - _**\[炎\] means flame🔥 in Japanese**_ - is a small, simple, and ultrafast web framework for the Edges.
|
2023-05-14 01:33:34 +02:00
|
|
|
It works on any JavaScrip runtime: Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, Vercel, Lagon, AWS Lambda, and Node.js.
|
|
|
|
|
2023-02-18 00:27:54 +01:00
|
|
|
Fast, but not only fast.
|
2021-12-17 07:53:31 +01:00
|
|
|
|
2022-05-13 05:30:06 +02:00
|
|
|
```ts
|
2022-01-09 13:10:12 +01:00
|
|
|
import { Hono } from 'hono'
|
2022-01-01 07:29:41 +01:00
|
|
|
const app = new Hono()
|
2021-12-17 07:53:31 +01:00
|
|
|
|
2023-02-18 00:27:54 +01:00
|
|
|
app.get('/', (c) => c.text('Hono!'))
|
2021-12-17 07:53:31 +01:00
|
|
|
|
2022-07-16 10:51:34 +02:00
|
|
|
export default app
|
2021-12-17 07:53:31 +01:00
|
|
|
```
|
|
|
|
|
2023-02-22 21:47:56 +01:00
|
|
|
## Quick Start
|
|
|
|
|
|
|
|
```
|
|
|
|
npm create hono@latest my-app
|
|
|
|
```
|
|
|
|
|
2022-01-08 01:48:22 +01:00
|
|
|
## Features
|
2021-12-17 07:53:31 +01:00
|
|
|
|
2023-05-14 01:33:34 +02:00
|
|
|
- **Ultrafast** - The router _RegExpRouter_ is really fast. Not using linear loops. Fast.
|
|
|
|
- **Multi-runtime** - Works on Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, Lagon, AWS Lambda or Node.js. The same code runs on all platforms.
|
2023-02-18 00:27:54 +01:00
|
|
|
- **Batteries Included** - Hono has built-in middleware, custom middleware, and third-party middleware. Batteries included.
|
2023-03-02 11:58:13 +01:00
|
|
|
- **Delightful DX** - First-class TypeScript support. Now, we've got "Types".
|
2023-05-14 01:33:34 +02:00
|
|
|
- **Small** - The `hono/tiny` preset is under 12kB. Hono has zero dependencies and uses only the Web Standard API.
|
2021-12-14 21:17:56 +01:00
|
|
|
|
2022-07-02 11:29:09 +02:00
|
|
|
## Benchmarks
|
|
|
|
|
2023-02-18 00:27:54 +01:00
|
|
|
**Hono is the fastest**, compared to other routers for Cloudflare Workers.
|
2022-01-05 10:41:29 +01:00
|
|
|
|
2023-02-18 00:27:54 +01:00
|
|
|
```
|
2023-05-14 01:33:34 +02:00
|
|
|
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)
|
2022-09-20 16:06:05 +02:00
|
|
|
Fastest is Hono
|
2023-05-14 01:33:34 +02:00
|
|
|
✨ Done in 28.06s.
|
2021-12-27 17:34:09 +01:00
|
|
|
```
|
|
|
|
|
2022-07-16 10:51:34 +02:00
|
|
|
## Documentation
|
2022-07-08 02:22:10 +02:00
|
|
|
|
2023-02-16 15:18:34 +01:00
|
|
|
The documentation is available on [hono.dev](https://hono.dev).
|
2021-12-14 21:31:37 +01:00
|
|
|
|
2022-07-16 10:51:34 +02:00
|
|
|
## Migration
|
2022-01-05 21:11:37 +01:00
|
|
|
|
2023-02-18 00:27:54 +01:00
|
|
|
The migration guide is available on [docs/MIGRATION.md](docs/MIGRATION.md).
|
2021-12-14 21:31:37 +01:00
|
|
|
|
2022-08-26 14:44:23 +02:00
|
|
|
## Communication
|
|
|
|
|
2022-09-15 02:53:03 +02:00
|
|
|
[Twitter](https://twitter.com/honojs) and [Discord channel](https://discord.gg/KMh2eNSdxV) are available.
|
2022-08-26 14:44:23 +02:00
|
|
|
|
2022-01-05 21:11:37 +01:00
|
|
|
## Contributing
|
|
|
|
|
2022-04-26 00:58:08 +02:00
|
|
|
Contributions Welcome! You can contribute in the following ways.
|
2022-01-05 21:11:37 +01:00
|
|
|
|
2022-07-23 02:46:20 +02:00
|
|
|
- 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](docs/CONTRIBUTING.md).
|
2022-01-05 21:11:37 +01:00
|
|
|
|
2022-02-15 09:19:53 +01:00
|
|
|
## Contributors
|
|
|
|
|
2023-05-14 01:33:34 +02:00
|
|
|
Thanks to [all contributors](https://github.com/honojs/hono/graphs/contributors)!
|
2022-02-15 09:19:53 +01:00
|
|
|
|
2023-04-08 11:34:03 +02:00
|
|
|
## Authors
|
2021-12-14 20:26:22 +01:00
|
|
|
|
|
|
|
Yusuke Wada <https://github.com/yusukebe>
|
|
|
|
|
2023-05-14 01:33:34 +02:00
|
|
|
_RegExpRouter_, _SmartRouter_, _LinearRouter_, and _PatternRouter_ are created by Taku Amano <https://github.com/usualoma>
|
2023-03-06 12:42:05 +01:00
|
|
|
|
2021-12-14 20:26:22 +01:00
|
|
|
## License
|
|
|
|
|
2022-01-07 09:34:12 +01:00
|
|
|
Distributed under the MIT License. See [LICENSE](LICENSE) for more information.
|