官网:https://openkraken.com/css
Github: https://github.com/openkraken/krakenvue
自 2021年4月21日开源以来,北海(Kraken)就迎来了社区极大的关注。做为一款兼容 W3C 标准的渲染引擎,打造出高性能,轻量,可扩展的产品一直是 Kraken 团队奋斗的目标。通过近 2 个多月的迭代,在修复了“亿点点”的 bug 后,Kraken 终于迎来了 0.8.0 版本。react
更新内容
支持 Flutter 最新 stable 版本git
0.8 版本支持最新的 Flutter stable 版本 — v2.2.2,而且完美支持 Dart Null Safety。github
性能提高ide
在这个版本中,咱们优化了 Bridge 的运行性能,经过以前的调查研究咱们发现 JavaScript Bindings 中每一次属性访问的调用,都会对已知的属性集合作一次额外的拷贝,所以咱们优化这块的实现来减小没必要要的拷贝。 经过这个的优化策略,Kraken 0.8 版本相比 0.7 版本提高了 10% 的首屏性能。布局
Flexbox layout 性能加强性能
Flexbox 布局的性能也获得了加强,咱们新增了判断样式是否变动的策略来减小一些没必要要的 layout 操做,进一步压缩了提高了 flexbox 所消耗的时间,即便页面中存在多层 flexbox 嵌套的状况,也能快速生成页面。flex
新的 HTML 标签和新的 CSS 属性单位优化
在标签和 CSS 能力方面,咱们在 0.8.0 版本添加 h1-h6,strong 等经常使用 HTML 语义话标签的支持,而且新增了 vmin & vmax CSS 单位,同时还支持文本样式的继承。
在布局能力上,咱们新增了 margin 双边距合并的,虽然这个功能在 W3C 小组看来是个 design mistake,可是咱们依然打算去支持它,提供兼容 W3C 标准的渲染能力始终是 Kraken 的主要目标。
大量问题修复
开源以后,社区同窗反馈了不少 Kraken 使用上的问题,其中包括集成应用黑/白屏,vue/react 页面没法运行,事件冒泡不符合 W3C 标准行为,以及一些其余的报错问题。
在 v0.8.0 版本,上诉的问题中都已经被解决,在这里还要再次感谢社区用户的支持。若是没有大家的帮助,咱们作不到这些。
社区使用状况
在 Kraken 开源以后,有多家公司都向 Kraken 团队表示,他们将尝试接入 Kraken 到他们的 App 中去,目前已知的公司包括:
- 优酷
- 高德地图
- QQ 音乐
- 陆金所
- 涂鸦科技
若是你的产品也在尝试使用 Kraken,欢迎在评论区进行回复。
What's Next
目前 Kraken 团队的首要目标是提供极致的启动性能,咱们将在下个版本(0.9)推出更快的技术方案来提高应用的启动性能:
- 支持 Quickjs,提供 Bytecode 加载支持。
- 支持 HTML 文本格式,支持 SSR 渲染方案。
欢迎持续关注 Kraken 的进展,若是你有任何和 Kraken 有关的问题,欢迎在 Kraken 的 Github Repo 上发起讨论。