0
0
mirror of https://github.com/honojs/hono.git synced 2024-11-22 02:27:49 +01:00
hono/README.md

106 lines
4.2 KiB
Markdown
Raw Normal View History

<div align="center">
<a href="https://hono.dev">
<img src="https://raw.githubusercontent.com/honojs/hono/main/docs/images/hono-title.png" width="500" height="auto" alt="Hono"/>
</a>
</div>
<hr />
2021-12-14 21:17:56 +01:00
<p align="center">
<a href="https://hono.dev"><b>Documentation :point_right: hono.dev</b></a><br />
<i>v3 has been released!</i> <a href="docs/MIGRATION.md">Migration guide</b>
</p>
<hr />
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/honojs/hono/ci.yml?branch=main)](https://github.com/honojs/hono/actions)
[![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)
[![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)
[![GitHub commit activity](https://img.shields.io/github/commit-activity/m/honojs/hono)](https://github.com/honojs/hono/pulse)
[![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)
[![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.
It works on any JavaScript runtime: Cloudflare Workers, Fastly Compute@Edge, Deno, Bun, Vercel, Lagon, AWS Lambda, Lambda@Edge, and Node.js.
2023-05-14 01:33:34 +02:00
Fast, but not only fast.
2021-12-17 07:53:31 +01:00
2022-05-13 05:30:06 +02:00
```ts
import { Hono } from 'hono'
const app = new Hono()
2021-12-17 07:53:31 +01:00
app.get('/', (c) => c.text('Hono!'))
2021-12-17 07:53:31 +01: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
- **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, Lambda@Edge, 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".
2021-12-14 21:17:56 +01:00
2022-07-02 11:29:09 +02:00
## Benchmarks
**Hono is the fastest**, compared to other routers for Cloudflare Workers.
```
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
```
## Documentation
2022-07-08 02:22:10 +02:00
The documentation is available on [hono.dev](https://hono.dev).
2021-12-14 21:31:37 +01:00
## Migration
The migration guide is available on [docs/MIGRATION.md](docs/MIGRATION.md).
2021-12-14 21:31:37 +01:00
## Communication
[Twitter](https://twitter.com/honojs) and [Discord channel](https://discord.gg/KMh2eNSdxV) are available.
## Contributing
2022-04-26 00:58:08 +02:00
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](docs/CONTRIBUTING.md).
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>
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.