Denoのフロントエンドフレームワークの比較
要約
おそらく、現時点で最もGitHubのスター数が多いDeno製フレームワークです (2022/08時点で8.5K) カスタムハンドラーによって、REST APIなどを実装することもできます。
プラグインシステムが実装されており、これによって様々なフレームワークやファイル形式(MDXなど)をサポートすることも可能です。 コンポーネントはJSXで記述し、SSRサポートを提供しています ビルドツール
2022/10 追記) 現在は、開発がやや滞っているようです
v0.5.0現在、SSRやSSGなどの機能はサポートされていないものの、将来的には実装される予定のようです。 Luath ※現在はしばらくメンテナンスされていなさそうです スタティックサイトジェネレータ
Denoで実装されたシンプルなスタティックサイトジェネレータ プラグインシステムによって拡張が可能
Adaptersという様々なプラットフォームを抽象化するための仕組みの導入が検討されているようです これが導入されれば、例えばDeno Adapterを実装することにより、Gatsbyが生成した本番向けの成果物をDenoで動かせるようになりそうです FreshにおいてもUnoCSSサポートの需要はあるようで、プラグインの提供について検討されているようです () テストフレームワーク
Denoに組み込まれたテストランナ
現状はこれを使っておくのが無難だと思います
E2Eテスト
タスクランナ
Gitフックもサポートしています
依存管理
Import mapsとは、Denoやブラウザなどにbare specifierを認識させることができる機能ですが、これは依存関係の管理にも活用することができます。 基本的には、まずこのアプローチを試してみるのがよいのではないかと思っています。
あるアプリケーションやライブラリなどが依存するパッケージをdeps.tsという単一のファイルでまとめて管理する手法です。 シンプルではありますが、Tree shakingのことなども考えると、フロントエンド開発においてはあまり推奨されない手法だと個人的には思います。
CDN/モジュールレジストリ
npmレジストリと互換性のあるパッケージレジストリです Denoの本体にはjsrと連携してパッケージ管理をする仕組みが組み込まれています Deno向けのライブラリを探す際は基本的にここから探すとよいと思います jsrでも公開されているnpmパッケージについては、高確率でDenoでも動作する可能性が高いと思われます Deno向けのモジュールは基本的にここから探すとよいでしょう
現時点では、まずjsrからパッケージを探すことをおすすめします ブロックチェーンをベースに実装されているようです。
小さなスクリプトを配信することを目的としたモジュールレジストリです。
npmパッケージの利用について
npm:URL経由で読み込む
また、これらの手法は併用することも可能です。
関連ページ