ソフトウェア
上級

UnJS H3 v1(アンジェイエスエイチスリー)

2024年UnJS公開のLightweight HTTP Framework。Web Standard Request/Response+Edge Runtime+Cloudflare/Deno/Bun対応+Universal Web Server+Nitro基盤搭載。

0 回閲覧
0 いいね
2026/5/5 更新
関連タグ
UnJS
H3
HTTP Framework
Edge Runtime
Nitro

概要

UnJS H3 v1は2024年にUnJS(Pooya Parsa氏率いるNuxt生態圏のJavaScriptライブラリ集合体)が安定版公開した軽量HTTP Frameworkで、Express/Fastifyの代替として、Web Standard Request/Response API準拠・Edge Runtime対応・Universal Server Framework設計を採用。Nuxt 3のServer Engine「Nitro」のデフォルトHTTP Frameworkとして使われている関係で、Nuxt採用プロジェクトでは間接的に大量に利用されている。Honoと類似のWeb Standard preferring設計だが、UnJSスタック(unstorage/unwasm/ofetch等)と一体化したエコシステム統合性が特徴。Cloudflare Workers・Deno Deploy・Bun・Node.js・Vercel Edge Functions等の主要Edge Runtimeで動作可能で、サーバーレス時代のJavaScript HTTP開発の選択肢として注目度が上昇中。

主な特徴・仕組み

  • Lightweight Core: 0 dependencies(Pure JavaScript)、Bundle Size <30KB
  • Web Standard Request/Response: Fetch API準拠、Edge Runtime互換
  • Edge Runtime対応: Cloudflare Workers/Deno Deploy/Bun/Vercel Edge Functions
  • Composable Handlers: Middleware/Hookベース、Express-likeなhandler chain
  • TypeScript First: 型推論による型安全なRouter+Handler設計
  • Composable API: defineEventHandler/eventHandler/defineRequestMiddleware等の細粒度API
  • Body Parser: JSON/Form/Multipart自動Parsing、独自Middleware不要
  • Cookies/Headers: Web Standard Headers API+独自Helper関数
  • Validation: Zod/Valibot/Standard Schemaサポート、Type-safeリクエスト検証
  • Error Handling: HTTP error class+global error handler
  • Plugin Architecture: UnJS Ecosystem(unstorage/ofetch/h3-zod)とシームレス統合
  • Streaming: Web Standard ReadableStream対応、SSE(Server-Sent Events)サポート

スペック比較表

項目UnJS H3 v1Hono 4.xExpress.js 5Fastify 5
Web Standard Request/Response○○× (Adapter経由)× (Adapter経由)
Edge Runtime○○××
Bundle Size<30KB<20KB~80KB~150KB
Type Safety○○△ (Plugin)○
MiddlewareComposableMiddlewareMiddleware ChainHooks
Routerunjs/routerhono/routerexpress-routerfastify-router
ValidationStandard SchemaZod/ValibotPluginJSON Schema
Performance(req/s)60K+ Bun80K+ Bun30K Node50K Node
採用FrameworkNitro/Nuxt 3Cloudflare系多数Mercurius/Sentry等

具体例・対応製品

  • UnJS H3 v1.13 GA 2024: GitHub Stars 4K+、Nitro 2.x公式統合
  • Nuxt 3 + Nitro: H3が暗黙的にNitro経由で利用、API Routeで頻出
  • Vercel Functions: H3経由でServerless Function構築、Edge Runtime動作
  • Cloudflare Workers: H3 Adapter経由でWorkers Functions開発
  • Bun Server: Bun.serve + H3で60K+ req/s高性能サーバー
  • 競合機種: Hono 4.x(Cloudflare系強)、Express.js 5(汎用標準)、Fastify 5(高性能)、Elysia(Bun特化)

自作PCでの選び方・注意点

UnJS H3はNuxt 3を採用するプロジェクトで自然に利用される位置づけだが、独立HTTP Frameworkとしても有力な選択肢。Express.js(汎用標準)・Hono(Cloudflare強)・Fastify(高性能)・Elysia(Bun特化)と比較する場合、UnJS H3の差別化要素はUnJSエコシステム(unstorage/ofetch/h3-zod等)との統合性とNuxt生態圏との親和性。jisaku.com APIで採用しているHono 4.xとは設計思想が近く、Web Standard Request/Response対応+Edge Runtime対応の点で類似。両者の選択は、Nuxt系プロジェクト→H3、Cloudflare Workers中心→Hono、汎用Bun→Elysia の使い分けが一般的。Bundle Size <30KBの軽量性はEdge Runtimeでのコールドスタート最適化に貢献し、低レイテンシAPIサーバー構築に有利。学習コストはExpress経験者で1日、Hono経験者なら数時間レベル。日本国内のNuxt 3採用プロジェクトでは間接的に大量に動作中で、Pooya Parsa氏の活発な開発で信頼性は高い。

関連用語との違い

Honoとの違い: HonoはCloudflare Workers特化、H3はNuxt/UnJS生態圏特化。両者ともWeb Standard準拠+Edge Runtime対応で機能類似だが、エコシステム統合先が異なる。Honoは独立Stand-alone、H3はUnJS依存。 Nitroとの違い: NitroはServer Engine全体(Build/Deploy/Routing含む)、H3はその中のHTTP Frameworkレイヤー。Nuxt 3採用プロジェクトでは Nitro+H3 がセットで動作、H3単体利用も可能。

よくある質問(FAQ)

Q1: jisaku.com APIで使うHonoから H3 へ移行する価値は? A: 通常は推奨しない。両者ともCore機能はほぼ同等で、移行コストはかかる。Nuxt 3 SSRと統合する場合は H3 が自然、Cloudflare Workers中心+Edge最適化なら Hono 維持。具体的な技術要件で判断。

Q2: Express.js 5 から H3への移行手順は? A: 1) defineEventHandler で各Routeをラップ、2) Middleware を defineRequestMiddleware に変換、3) Body Parser・Cookies・Headers アクセスをWeb Standard APIに書き換え。中規模APIで2-4週間の移行工数。

Q3: H3 v2の予定は? A: 2025年Q2頃にv2 Alpha予定。主要変更はTypeScript推論精度向上・Streamings First-class化・WebSocket Plugin標準化など。v1からv2はBreaking Change軽微で、移行容易性を重視した設計。

まとめ

  • UnJS H3 v1 = 2024年公開Lightweight HTTP Framework
  • Web Standard Request/Response+Edge Runtime対応+Bundle <30KB
  • Nuxt 3 Server Engine Nitroのデフォルト HTTP Framework
  • Cloudflare/Deno/Bun/Vercel/Node.js全Runtime動作
  • Hono/Express/Fastifyと並ぶJavaScript HTTP Framework選択肢
この記事について
カテゴリーソフトウェア
難易度上級
作成日2026/5/5