機能対応表と設計上の境界¶
HigumaはRust HTTP coreとPython APIを組み合わせた小さなframeworkです。 他frameworkに存在するすべての機能を内蔵した、とは表現しません。 各機能を内蔵・連携・外部で構成に分けます。0.6.0で追加した機能は表内に明記しています。
| 分野 | 提供方法 | 対応範囲/次に読むページ |
|---|---|---|
| Routing / Blueprint / class view | 内蔵 | typed path、HTTP method、hooks、MethodView。機能ガイド |
| Input validation / DI / OpenAPI | 内蔵 | Annotated、dataclass、TypedDict、yield cleanup、output filtering。API |
| SSR | 内蔵 | MiniJinjaでHTML生成。Jinja2全機能やPython callable globalの完全互換ではない |
| CSR / SPA / history router | 内蔵(0.6) | safe fallback・API予約・subpath。frontend guide |
| Vite / React / Vue / Svelte | 連携 | build成果物配信、manifest CSS/preload。compiler・Node・HMRは外部 |
| 静的生成 / MPA | 連携(0.6) | 外部生成HTMLのdirectory index配信。生成器自体は内蔵しない |
| Static / HTTP cache / download | 内蔵 | multiple roots、ETag、日時条件、Range、Rust streaming。frontend guide |
| Compression | 内蔵+外部 | Rust gzip。Brotli選択・CDN invalidationはproxy/CDN |
| WebSocket / SSE / stream | 内蔵 | native endpoints、bounded queue、Origin、sync/async stream。機能ガイド |
| Session / login / roles / permission | 内蔵 | signed Cookie、fresh login、password hashing。認証 |
| OAuth | 内蔵+外部service | Google/LINE/Discord helper。provider credentials・本番E2Eは利用先で確認 |
| CORS / CSRF / Host / proxy / rate limit | 内蔵 | exact trust境界。rate limitはprocess内。分散quotaは外部 |
| SQLite ORM / transactions | 内蔵 | field/query/commit/rollback。migration、relationships、pool、他DBは専門library |
| Background task | 内蔵 | response後の軽量処理。永続queue・retry・schedulerは外部 |
| Lifespan / supervisor | 内蔵 | sync/async lifecycle、複数process。デプロイ |
| Flask compatibility | 部分互換+WSGI連携 | g/session/flash等。対応境界。全extension互換ではない |
| WSGI / ASGI apps | HTTP連携 | buffered mount。mounted WS、ASGI lifespan、無期限streamは非対応 |
| GraphQL / RPC | 外部library連携 | HTTP互換範囲のWSGI/ASGI appをmount。subscription転送は保証しない |
| App cache / Redis / durable jobs | 外部で構成 | lifespanとDIでclientを管理。HTTP cacheとは別の責任 |
| i18n / email / object storage / payments | 外部で構成 | Python libraryやserviceをview/DIから利用。機密値はserver側だけ |
| PWA / offline / service worker | frontend側 | public file配信可。worker生成・更新・offline戦略は別途必要 |
| Logs / metrics / tracing | logging+middleware連携 | request hook、Server-Timing等。監視backend・exporterは外部 |
| TLS / HTTP2/3 / CDN / edge WAF | 外部で構成 | trusted reverse proxyで終端し、HigumaはHTTP coreとして動かす |
| Test | 内蔵+repository suite | test client、実socket HTTP/WS、配布wheel smoke。実browserは別途検証 |
機能を追加する判断基準¶
Python実行時依存0・Rustからのstream・明示的なsecurity境界を維持します。 durable queueやdatabase migrationのように運用基盤に依存する機能を、同名の薄いstubで 「対応済み」にしません。外部libraryを組み込む場合も、buffered HTTP・event loop・ process-local state等の制約を事前に確認してください。
組込みではない機能も利用できないという意味ではありません。Higumaが提供するrouting、 middleware、lifespan、DI、mountのどの境界で接続するかを明示して構成します。