【ホノ】

Hono とは?

最終更新:
💡 URLの案内係を、いろいろな実行環境へ

Web標準のRequest・Responseなどを使うJavaScript/TypeScript向けWebフレームワーク。URLやHTTPメソッドに応じた処理、ミドルウェア、APIの型共有などを組み合わせ、Cloudflare WorkersやNode.jsなどの対応環境でWeb APIを作れる。

📌 このページのポイント
Hono:共通部分を複数の環境へ🔥 HonoアプリWeb標準のAPIWorkersCloudflareDeno実行環境Bun実行環境Node.jsアダプター環境専用の処理や起動設定は確認
対応環境で共通のWeb APIを使うイメージ。各環境のサービスやアダプターは別途設定する。
ひよこ ひよこ
Honoって、何を作る道具?
ペンギン先生 ペンギン先生
Web APIなどを作るフレームワークだよ。たとえばGET /helloに来たら挨拶を返す、といった処理を登録する。URLとHTTPメソッドを見て処理を選ぶ、案内係のような役目があるね。
ひよこ ひよこ
名前は日本語なの?
ペンギン先生 ペンギン先生
公式は日本語の「炎」が由来と説明しているよ。Web標準を基にした小さなフレームワークで、Cloudflare Workers、Deno、Bun、Node.jsなどに対応しているんだ。
ひよこ ひよこ
移し替えても、全部そのまま動く?
ペンギン先生 ペンギン先生
共通のWeb APIを使う部分は共有しやすいよ。ただし環境専用のデータベース接続やファイル操作、起動方法は別に確認しよう。Node.jsではNode.jsアダプターを使うなど、実行環境に合わせた準備が必要だね。
ひよこ ひよこ
とにかく一番速いフレームワーク?
ペンギン先生 ペンギン先生
速度は測る条件やアプリの処理で変わるから、ひとまとめには言えないよ。Honoには複数のルーターがあり、標準構成ではSmartRouterがRegExpRouterやTrieRouterから選ぶ。ルートの検索だけでなく、データベースなども含めて計測しよう。
ひよこ ひよこ
TypeScriptで何が便利なの?
ペンギン先生 ペンギン先生
APIを書くときの型の支援があるよ。RPC機能ではサーバーのAPIの型をHono Clientと共有し、入力やJSON応答の型を推論できる。ただし型の共有だけで外部入力が安全になるわけではないので、バリデーターなどで実際の値も確認しよう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Hono」って出てきたら「複数の実行環境に対応し、Web APIなどを作るフレームワーク」と思えばだいたいOK!
📖 おまけ:英語の意味
「Hono」 = 炎
💬 公式ドキュメントは日本語の「炎」が由来と説明しているよ。

参考資料

← 用語集にもどる