Kotlin/JS フレームワーク
Web開発を簡素化する、利用可能なKotlin/JavaScriptフレームワークを活用しましょう。 これらのフレームワークは、モダンなWebアプリケーションを構築するための、すぐに使えるコンポーネント、ルーティング、状態管理、その他のツールを提供します。
以下は、コミュニティによるいくつかのKotlin/JS Webフレームワークです。
Kobweb
Kobwebは、Compose HTMLを使用してウェブサイトやWebアプリケーションを作成するためのKotlinフレームワークです。高速な開発のためのライブリロード(live-reloading)をサポートしています。Next.jsにインスパイアされたKobwebは、ウィジェット、レイアウト、ページの追加に関する標準的な構造を推進しています。
標準機能として、Kobwebはページルーティング、ライト/ダークモード、CSSスタイリング、Markdownサポート、バックエンドAPIなどを提供します。また、モダンなUIのための多機能なウィジェットセットを備えたUIライブラリであるSilkも含まれています。
Kobwebは、SEOや自動検索インデックス作成のためにページのスナップショットを生成するサイトエクスポートもサポートしています。さらに、状態の変化に応じて効率的に更新されるDOMベースのUIの作成を可能にします。
ドキュメントと例については、Kobweb의 ドキュメントサイトを参照してください。
フレームワークに関する更新や議論については、Kotlin Slackの #kobweb および #compose-web チャンネルに参加してください。
Kilua
Kiluaは、Compose Runtime上に構築されたコンポーザブルなWebフレームワークであり、compose-htmlライブラリに似ています。compose-htmlとは異なり、KiluaはKotlin/WasmとKotlin/JSの両方のターゲットをサポートしています。
Kiluaは、宣言的なUIコンポーネントを作成し、その状態を管理するためのモジュール式APIを提供します。また、一般的なWebアプリケーションのユースケース向けの、すぐに使えるコンポーネントセットも含まれています。
KiluaはKVisionフレームワークの後継です。Kiluaは、Composeユーザー(@Composable関数、状態管理、コルーチン/flowの統合)と、KVisionユーザー(UIコンポーネントとの命令的な相互作用を可能にするコンポーネントベースのAPI)の両方にとって親しみやすいように設計されています。
ドキュメントと例については、GitHubの Kiluaリポジトリを参照してください。
フレームワークに関する更新や議論については、Kotlin Slackの #kilua チャンネルに参加してください。
Kotlin React
Reactは、Webやネイティブのユーザーインターフェースで広く使用されているコンポーネントベースのライブラリです。豊富なコンポーネントのエコシステム、学習資料、そして活発なコミュニティを提供しています。
Kotlin Reactは、ReactのエコシステムとKotlin의 型安全性および表現力を組み合わせた、React用のKotlinラッパーです。
ライブラリに関する更新や議論については、Kotlin Slackの #react および #javascript チャンネルに参加してください。
KVision
KVisionは、すぐに使えるUIコンポーネントを使用してKotlin/JSアプリケーションを構築するための、オブジェクト指向のWebフレームワークです。これらのコンポーネントは、アプリケーションのユーザーインターフェースの構成要素(ビルディングブロック)となります。
このフレームワークを使用すると、リアクティブ(reactive)と命令的(imperative)の両方のプログラミングモデルを使用してフロントエンドを構築できます。また、KtorやSpring Boot、その他のフレームワーク用のコネクタを使用して、サーバーサイドアプリケーションと統合することもできます。さらに、Kotlin Multiplatformを使用してコードを共有することも可能です。
ドキュメント、チュートリアル、例については、KVisionのドキュメントサイトを参照してください。
フレームワークに関する更新や議論については、Kotlin Slackの #kvision および #javascript チャンネルに参加してください。
fritz2
fritz2は、リアクティブなWebユーザーインターフェースを構築するためのスタンドアロンフレームワークです。HTML要素を構築・レンダリングするための独自の型安全なDSLを提供し、コンポーネントとそのデータバインディングを定義するためにKotlinのコルーチン(coroutines)とFlow(flows)を使用します。
標準機能として、fritz2は状態管理、バリデーション、ルーティングなどを提供します。また、Kotlin Multiplatformプロジェクトとも統合できます。
ドキュメント、チュートリアル、例については、fritz2のドキュメントサイトを参照してください。
フレームワークに関する更新や議論については、Kotlin Slackの #fritz2 および #javascript チャンネルに参加してください。
Doodle
Doodleは、Kotlin/JS用のベクトルベースのUIフレームワークです。Doodleアプリケーションは、DOM、CSS、またはJavaScriptに依存するのではなく、ブラウザのグラフィック機能を使用してユーザーインターフェースを描画します。このアプローチにより、任意のUI要素、ベクターシェイプ、グラデーション、カスタムビジュアライゼーションのレンダリングを制御できるようになります。
ドキュメント、チュートリアル、例については、Doodleのドキュメントサイトを参照してください。
フレームワークに関する更新や議論については、Kotlin Slackの #doodle および #javascript チャンネルに参加してください。
