Hono
作者 | Yusuke Wada |
---|---|
最新版 | |
リポジトリ | https://github.com/honojs/hono |
プログラミング 言語 | TypeScript |
ライセンス | MIT |
公式サイト | https://hono.dev/ |
Hono は、 TypeScript および JavaScript のためのオープンソースな Web フレームワークである。[2] Web 標準に従っているという特徴がある。[3]
概要
[編集]Hono は、Web フレームワークであり、コアは http リクエストのためのミドルウェア及びルーティングの登録と使用をすることができる。[4]Web 標準に従っている。そのため、Web 標準に従っている任意の JavaScript ランタイム で Hono を使用することができる。[3][5]
特徴
[編集]Hono は、以下の特徴を備えている。
RegExpRouter
[編集]RegExpRouter は、Hono に標準で備わっているルーターである。[6] ルーティングを予め 1 つの正規表現にまとめることにより、高速なルーティングを実現している。[7][8][9][10]
Adapter
[編集]Hono は Web 標準な API のみで構成されているため、Web 標準に従っているランタイムで動作可能である。それらの API を Hono が提供していなくても、Adapter という機能を介してさまざまな JavaScript ランタイムで動かすことができる。Hono は、Deno[11][12][13], Node.js[14][15], Bun[16][17][18], Cloudflare Workers[19][20][21][22], AWS Lambda[23][24][25]で動かすこともできる。さらに、サーバーサイド JavaScript ランタイムのみでなく、Hono はブラウザ上で動作する。[26][27]これにより、ブラウザの Service Worker 上での動作が可能になる。[28]
Middleware
[編集]Hono は、デフォルトでいくつかの Middleware を提供する。例えば、デフォルトの Middlewre を用いて CORS 対応[29]や、IP アドレスによるアクセス制御が可能である。[30]
参考文献
[編集]- ^ "Release 4.6.11"; 閲覧日: 2024年11月22日; 出版日: 2024年11月19日.
- ^ “覚書:Honoとは?次世代フレームワークが注目される理由~その魅力と可能性~|Shinoda”. note(ノート) (2024年9月7日). 2024年10月21日閲覧。
- ^ a b “Honoの概要とその特徴: Web標準に従った軽量高速フレームワーク | 株式会社一創”. www.issoh.co.jp (2024年7月9日). 2024年10月21日閲覧。
- ^ “Hono + Cloudflare Workers で REST API を作ってみよう”. azukiazusaのテックブログ2 (2022年8月28日). 2024年10月21日閲覧。
- ^ “Announcing Hono on JSR” (英語). Deno Blog (2024年6月25日). 2024年10月21日閲覧。
- ^ “Hono vs. H3 vs. HatTip vs. Elysia - modern server(less) replacements for Express” (英語). DEV Community (2024年3月12日). 2024年10月21日閲覧。
- ^ Amano, Taku (2023年12月2日). “honoのJSXの特徴”. blog.taaas.jp. 2024年10月21日閲覧。
- ^ “Routers - Hono” (英語). hono.dev (2024年10月20日). 2024年10月21日閲覧。
- ^ “How I/we got 2k stars - ゆーすけべー日記”. yusukebe.com (2022年8月22日). 2024年10月21日閲覧。
- ^ “JSのウェブフレームワークで高速なルーターを実装する方法” (英語). Speaker Deck. 2024年10月21日閲覧。
- ^ “Deno support?? · Issue #184 · honojs/hono” (英語). GitHub. 2024年10月21日閲覧。
- ^ “jsr を利用して deno で hono を動かしただけ”. Zenn. 2024年10月21日閲覧。
- ^ “DenoでHonoを試すメモ”. Qiita (2022年12月11日). 2024年10月21日閲覧。
- ^ “Create a Node Server using Hono” (英語). DEV Community (2024年7月4日). 2024年10月21日閲覧。
- ^ Surti, Murtuzaali (2024年6月30日). “Create a Node Server using Hono under 10 Lines of Code” (英語). Syntackle. 2024年10月21日閲覧。
- ^ “BunとHono”. Zenn. 2024年10月21日閲覧。
- ^ “Build an HTTP server using Hono and Bun | Bun Examples” (英語). Bun. 2024年10月21日閲覧。
- ^ “Bunjs support · Issue #344 · honojs/hono” (英語). GitHub. 2024年10月21日閲覧。
- ^ “Cloudflare Workers - Hono” (英語). hono.dev (2024年10月20日). 2024年10月21日閲覧。
- ^ “Cloudflare WorkersとHono🔥を学ぶ”. Zenn. 2024年10月21日閲覧。
- ^ “Hono | Cloudflare Pages docs”. 2024年10月21日閲覧。
- ^ “Cloudflare Workersフレームワーク「Hono」の紹介 - ゆーすけべー日記”. yusukebe.com (2022年6月8日). 2024年10月21日閲覧。
- ^ “Hono on AWS Lambdaを体感する”. Qiita (2023年5月8日). 2024年10月21日閲覧。
- ^ “AWSユーザのためのHono入門”. Zenn. 2024年10月21日閲覧。
- ^ “最近 Hono で外部連携用の AWS Lambda 書いています”. Qiita (2024年4月1日). 2024年10月21日閲覧。
- ^ “Can Hono run inside a Service Worker in a web browser? · honojs · Discussion #954” (英語). GitHub. 2024年10月21日閲覧。
- ^ “Hono runs on a web browser, only the browser! It's an 83-line playground!”. 2024年10月21日閲覧。
- ^ “Service Worker - Hono” (英語). hono.dev (2024年10月20日). 2024年10月21日閲覧。
- ^ “HonoでCORS対応をする”. Zenn. 2024年10月21日閲覧。
- ^ “Honoを使い倒したい2024”. Zenn. 2024年10月21日閲覧。