Kotlin/JS 框架
利用现有的 Kotlin/JavaScript 框架来简化 Web 开发。 这些框架为构建现代 Web 应用程序提供了开箱即用的组件、路由、状态管理以及其他工具。
以下是来自社区的一些 Kotlin/JS Web 框架:
Kobweb
Kobweb 是一个用于通过 Compose HTML 创建网站和 Web 应用程序的 Kotlin 框架。它支持实时重载以实现快速开发。受 Next.js 启发,Kobweb 提倡使用标准结构来添加微件、布局和页面。
Kobweb 开箱即用,提供页面路由、浅色/深色模式、CSS 样式设置、Markdown 支持、后端 API 等功能。它还包含 Silk,这是一个包含一组用于现代 UI 的通用微件的 UI 库。
Kobweb 还支持网站导出,通过为 SEO 和自动搜索索引生成页面快照。此外,它还支持创建基于 DOM(文档对象模型) 的 UI,并能根据状态变化高效更新。
有关详细信息和示例,请参阅 Kobweb 文档。
有关该框架的更新和讨论,请加入 Kotlin Slack 中的 #kobweb 和 #compose-web 频道。
Kilua
Kilua 是一个基于 Compose 运行时 构建的可组合 Web 框架,类似于 compose-html 库。与 compose-html 不同,Kilua 同时支持 Kotlin/Wasm 和 Kotlin/JS 目标。
Kilua 提供模块化 API 以创建声明式 UI 组件并管理其状态。它还包含一套适用于常见 Web 应用程序用例的开箱即用组件。
Kilua 是 KVision 框架的继任者。Kilua 的设计旨在让 Compose 用户(@Composable 函数、状态管理、协程/flow 集成)和 KVision 用户(允许与 UI 组件进行某些命令式交互的基于组件的 API)都感到熟悉。
有关详细信息和示例,请参阅 Kilua 文档。
有关该框架的更新和讨论,请加入 Kotlin Slack 中的 #kilua 频道。
Summon
Summon 是一个 Kotlin 多平台前端框架,用于跨 JVM、Kotlin/JS 和 Kotlin/Wasm 构建高性能应用程序。它支持基于组件的 UI 开发、一流的带 HTML 流式传输的服务器端渲染 (SSR),以及可编译为简洁 CSS 的修饰符驱动的样式设置。
Summon 还专注于用于无障碍功能和高级行为的运行时感知组件,同时保持跨平台的统一代码库。
有关详细信息和示例,请参阅 Summon 文档。
Kinetica
Kinetica 是一个 Kotlin UI 框架,专注于 Web 应用的实际成效:通过服务器渲染实现快速的初始页面交付、SEO 友好的 HTML 输出,以及在页面加载后平滑切换到交互式客户端 UI。它还支持无头测试,这有助于团队在不依赖完整浏览器环境的情况下,快速且可靠地测试 UI 行为。
Kinetica 开箱即用,包含路由、表单和持久化模块,因此团队可以更快地交付常见的应用功能。其更新模型应用最小的 DOM 补丁,这有助于在状态变化时保持交互响应,其一致的响应式模型旨在减少大型应用中的意外行为。
有关详细信息和示例,请参阅 Kinetica 文档。
Kotlin React
React 是一个基于组件的库,广泛用于 Web 和原生用户界面。它拥有庞大的组件生态系统、学习材料和活跃的社区。
Kotlin React 是 React 的 Kotlin 包装器,它将 React 生态系统与 Kotlin 的类型安全性和表现力结合在一起。
有关该库的更新和讨论,请加入 Kotlin Slack 中的 #react 和 #javascript 频道。
KVision
KVision 是一个面向对象的 Web 框架,用于通过开箱即用的 UI 组件构建 Kotlin/JS 应用程序。这些组件可以作为应用程序用户界面的构建块。
通过该框架,您可以使用响应式和命令式编程模型来构建前端。您还可以通过使用 Ktor、Spring Boot 和其他框架的连接器将其与您的后端应用程序集成。此外,您还可以使用 Kotlin Multiplatform 共享代码。
有关详细信息、教程和示例,请参阅 KVision 文档。
有关该框架的更新和讨论,请加入 Kotlin Slack 中的 #kvision 和 #javascript 频道。
fritz2
fritz2 是一个用于构建响应式 Web 用户界面的独立框架。它提供了自己的类型安全 DSL,用于构建和渲染 HTML 元素,并使用 Kotlin 的协程和 flow 来定义组件及其数据绑定。
fritz2 开箱即用,提供状态管理、验证、路由等功能。它还可以与 Kotlin 多平台项目集成。
有关详细信息、教程和示例,请参阅 fritz2 文档。
有关该框架的更新和讨论,请加入 Kotlin Slack 中的 #fritz2 和 #javascript 频道。
Doodle
Doodle 是一个用于 Kotlin/JS 的基于矢量的 UI 框架。Doodle 应用程序使用浏览器的图形功能来绘制用户界面,而不是依赖于 DOM、CSS 或 JavaScript。这种方法让您可以控制任意 UI 元素、矢量形状、渐变和自定义可视化的渲染。
有关详细信息、教程和示例,请参阅 Doodle 文档。
有关该框架的更新和讨论,请加入 Kotlin Slack 中的 #doodle 和 #javascript 频道。
