Kobweb框架v0.20.1版本发布:全面升级的前后端开发体验
Kobweb是一个基于Kotlin/Compose的现代化Web开发框架,它允许开发者使用声明式UI的方式构建响应式Web应用。最新发布的v0.20.1版本带来了多项重要更新,从路由系统到CSS支持,再到后端API增强,全面提升了开发体验。
核心功能增强
动态路由系统升级
新版本引入了通配符动态路由功能,开发者现在可以通过@Page("/a/b/c/...slug")这样的语法捕获URL中任意深度的路径片段。例如,对于URL"/a/b/c/d/e/f",路由将捕获"d/e/f"作为参数值。这种设计特别适合构建内容管理系统或需要灵活URL结构的应用。
前端开发体验优化
在CSS支持方面,新增了两个重要属性:
- transition-behavior:控制CSS过渡动画的行为,特别是对离散属性的处理方式
- color-scheme:声明元素支持哪些颜色方案(如light/dark模式)
此外,HTTP客户端API现在支持redirect参数,开发者可以更精细地控制重定向行为(如window.http.get(redirect = MANUAL))。
视觉与交互增强
Silk组件库新增了CanvasGl2组件,封装了WebGL2渲染上下文,为开发者提供了高性能的2D/3D图形渲染能力。颜色模式管理也更加智能:
- 新增
ColorMode.systemPreference,自动匹配用户系统偏好 - 提供
saveToLocalStorage/loadFromLocalStorage方法,持久化用户颜色模式选择
注意:为避免命名冲突,ColorScheme类已更名为ColorPalette,旧代码仍可工作但会显示弃用警告。
后端能力扩展
日志与路由优化
新版本允许通过配置禁用文件日志(enableFileLogging)或控制台日志(enableConsoleLogging),满足不同部署环境的需求。修复了资源与文件夹同名时的路由冲突问题,现在可以正确访问同名资源。
API拦截机制
引入了强大的API拦截器功能,开发者可以:
- 拦截所有进出请求/响应
- 修改请求/响应内容
- 实现全局逻辑(如认证检查)
- 重定向旧API端点
这种机制特别适合实现跨API的公共逻辑,如身份验证、请求日志或API版本迁移。
工程化改进
构建系统升级
项目现在发布到Maven Central和Gradle插件门户,简化了依赖管理。开发者可以移除对Varabyte私有仓库的引用。对于快照版本,可以使用Sonatype官方快照仓库。
新增importCss工具方法,简化CSS导入语法:
importCss("somestyle.css", layerName = "sometime")
Compose编译器集成
框架现在尝试优化Compose编译器配置以提升性能。如果遇到配置警告,只需确保Compose编译器插件与Kobweb插件在同一层级应用即可。
升级建议
升级到v0.20.1时,开发者应注意:
- 颜色方案相关类名变更
- Compose编译器插件的协同配置
- 考虑移除对私有仓库的依赖
Kobweb持续演进的方向表明,它正成为一个功能全面、开发体验优秀的全栈Web框架。新版本的多项改进特别适合需要灵活路由、高性能渲染和强大后端支持的复杂应用场景。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0204- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00