コンテンツにスキップ

Hono

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Hono
作者 Yusuke Wada
最新版
4.6.11[1] ウィキデータを編集 / 2024年11月19日 (3日前)
リポジトリ 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]

参考文献

[編集]
  1. ^ "Release 4.6.11"; 閲覧日: 2024年11月22日; 出版日: 2024年11月19日.
  2. ^ 覚書:Honoとは?次世代フレームワークが注目される理由~その魅力と可能性~|Shinoda”. note(ノート) (2024年9月7日). 2024年10月21日閲覧。
  3. ^ a b Honoの概要とその特徴: Web標準に従った軽量高速フレームワーク | 株式会社一創”. www.issoh.co.jp (2024年7月9日). 2024年10月21日閲覧。
  4. ^ Hono + Cloudflare Workers で REST API を作ってみよう”. azukiazusaのテックブログ2 (2022年8月28日). 2024年10月21日閲覧。
  5. ^ Announcing Hono on JSR” (英語). Deno Blog (2024年6月25日). 2024年10月21日閲覧。
  6. ^ Hono vs. H3 vs. HatTip vs. Elysia - modern server(less) replacements for Express” (英語). DEV Community (2024年3月12日). 2024年10月21日閲覧。
  7. ^ Amano, Taku (2023年12月2日). “honoのJSXの特徴”. blog.taaas.jp. 2024年10月21日閲覧。
  8. ^ Routers - Hono” (英語). hono.dev (2024年10月20日). 2024年10月21日閲覧。
  9. ^ How I/we got 2k stars - ゆーすけべー日記”. yusukebe.com (2022年8月22日). 2024年10月21日閲覧。
  10. ^ JSのウェブフレームワークで高速なルーターを実装する方法” (英語). Speaker Deck. 2024年10月21日閲覧。
  11. ^ Deno support?? · Issue #184 · honojs/hono” (英語). GitHub. 2024年10月21日閲覧。
  12. ^ jsr を利用して deno で hono を動かしただけ”. Zenn. 2024年10月21日閲覧。
  13. ^ DenoでHonoを試すメモ”. Qiita (2022年12月11日). 2024年10月21日閲覧。
  14. ^ Create a Node Server using Hono” (英語). DEV Community (2024年7月4日). 2024年10月21日閲覧。
  15. ^ Surti, Murtuzaali (2024年6月30日). “Create a Node Server using Hono under 10 Lines of Code” (英語). Syntackle. 2024年10月21日閲覧。
  16. ^ BunとHono”. Zenn. 2024年10月21日閲覧。
  17. ^ Build an HTTP server using Hono and Bun | Bun Examples” (英語). Bun. 2024年10月21日閲覧。
  18. ^ Bunjs support · Issue #344 · honojs/hono” (英語). GitHub. 2024年10月21日閲覧。
  19. ^ Cloudflare Workers - Hono” (英語). hono.dev (2024年10月20日). 2024年10月21日閲覧。
  20. ^ Cloudflare WorkersとHono🔥を学ぶ”. Zenn. 2024年10月21日閲覧。
  21. ^ Hono | Cloudflare Pages docs”. 2024年10月21日閲覧。
  22. ^ Cloudflare Workersフレームワーク「Hono」の紹介 - ゆーすけべー日記”. yusukebe.com (2022年6月8日). 2024年10月21日閲覧。
  23. ^ Hono on AWS Lambdaを体感する”. Qiita (2023年5月8日). 2024年10月21日閲覧。
  24. ^ AWSユーザのためのHono入門”. Zenn. 2024年10月21日閲覧。
  25. ^ 最近 Hono で外部連携用の AWS Lambda 書いています”. Qiita (2024年4月1日). 2024年10月21日閲覧。
  26. ^ Can Hono run inside a Service Worker in a web browser? · honojs · Discussion #954” (英語). GitHub. 2024年10月21日閲覧。
  27. ^ Hono runs on a web browser, only the browser! It's an 83-line playground!”. 2024年10月21日閲覧。
  28. ^ Service Worker - Hono” (英語). hono.dev (2024年10月20日). 2024年10月21日閲覧。
  29. ^ HonoでCORS対応をする”. Zenn. 2024年10月21日閲覧。
  30. ^ Honoを使い倒したい2024”. Zenn. 2024年10月21日閲覧。