0
0
mirror of https://github.com/honojs/hono.git synced 2024-11-21 18:18:57 +01:00
Web Framework built on Web Standards https://hono.dev/
Go to file
ottomated 1cee728193
feat(types): allow passing interfaces as Bindings / Variables (#3136)
* feat(types): allow passing `interface`s as Bindings / Variables

* test(context): add test for c.var

* fix lint warning

* test(types): add test for Bindings types
2024-07-16 21:41:38 +09:00
.devcontainer chore: use official deno installer (#2250) 2024-02-22 11:33:14 +09:00
.github chore: add the triage label (#3092) 2024-07-06 15:38:45 +09:00
.vitest.config ci: Report coverage with CodeCov (#2862) 2024-06-01 04:17:47 +09:00
.vscode refactor: body parser (#2045) 2024-01-21 06:17:48 +09:00
benchmarks chore: update benchmark (#3102) 2024-07-06 19:25:28 +09:00
docs docs: update readme and migrate guide for migrating deno.land/x to JSR (#2879) 2024-06-01 06:15:49 +09:00
runtime_tests Merge branch 'main' into next 2024-07-08 22:10:10 +09:00
src feat(types): allow passing interfaces as Bindings / Variables (#3136) 2024-07-16 21:41:38 +09:00
.eslintignore chore(eslint): enable @typescript-eslint/unbound-method (#2622) 2024-05-06 17:38:34 +09:00
.eslintrc.cjs chore(eslint): enable @typescript-eslint/unbound-method (#2622) 2024-05-06 17:38:34 +09:00
.gitignore chore: use Bun as a package manager (#2105) 2024-01-29 23:27:54 +09:00
.gitpod.yml chore: create .gitpod.yml (#2868) 2024-06-04 17:17:07 +09:00
.prettierrc chore(prettier): remove markdown-nocjsp parser 2022-07-16 10:03:01 +09:00
build.ts fix(build): fix ESM support in Node.js / use esbuild (#631) 2022-10-28 08:46:02 +09:00
bun.lockb chore: replace tsx with Bun (#3103) 2024-07-07 15:55:19 +09:00
bunfig.toml chore(ci): enable lcov reporter for Bun test (#3022) 2024-06-24 05:39:29 +09:00
codecov.yml ci: Report coverage with CodeCov (#2862) 2024-06-01 04:17:47 +09:00
jsr.json feat(middleware/combine): Introduce combine middleware (#2941) 2024-07-13 18:49:10 +09:00
LICENSE chore: update license, contributors as the copyright holders (#769) 2023-01-02 19:18:59 +09:00
package.cjs.json fix(typo): package.cjs.json target to type (#634) 2022-10-29 16:09:32 +09:00
package.json feat(middleware/combine): Introduce combine middleware (#2941) 2024-07-13 18:49:10 +09:00
README.md docs: update the description of package.json and README (#3052) 2024-06-27 17:13:29 +09:00
tsconfig.build.json chore(vitest/tsconfig): bump vitest and update tsconfig.build.json (#1851) 2023-12-25 11:46:37 +09:00
tsconfig.json feat(http-exception): Add a "cause" option to HTTPException (#2224) 2024-02-25 19:07:33 +09:00
vitest.config.ts chore: add text and html for coverage reporter (#2923) 2024-06-06 22:25:38 +09:00
yarn.lock chore: replace tsx with Bun (#3103) 2024-07-07 15:55:19 +09:00


Documentation 👉 hono.dev
Now supports JSR and deno.land/x is deprecated! See Migration guide.


GitHub Workflow Status GitHub npm npm JSR Bundle Size Bundle Size GitHub commit activity GitHub last commit codecov Discord badge

Hono - means flame🔥 in Japanese - is a small, simple, and ultrafast web framework built on Web Standards. It works on any JavaScript runtime: Cloudflare Workers, Fastly Compute, Deno, Bun, Vercel, AWS Lambda, Lambda@Edge, 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

Features

  • Ultrafast 🚀 - The router RegExpRouter is really fast. Not using linear loops. Fast.
  • Lightweight 🪶 - The hono/tiny preset is under 13kB. Hono has zero dependencies and uses only the Web Standard API.
  • Multi-runtime 🌍 - Works on Cloudflare Workers, Fastly Compute, Deno, Bun, 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".

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.