Expressus

以咖啡机为主题的Kotlin Multiplatform示例应用,用作Compose和SwiftUI下UI状态管理的练习场,演示相关文章中的思路。

分享到 X许可证: Apache-2.0

概述

Expressus 是一个以咖啡机为题材的 Kotlin Multiplatform 示例应用,作为 UI 状态管理的试验场,演示相关文章中讨论的思路。共享模块采用 Model-View-Intent 架构,用有限状态机校验状态转换,并支持状态恢复。界面方面,桌面端使用 Compose Multiplatform,Android 使用 Jetpack Compose,iOS 使用 SwiftUI。

主要特点

  • 共享模块中的 Model-View-Intent 架构
  • 校验状态转换的有限状态机
  • 同时恢复 UI 状态和 FSM 状态
  • 通过 Kotlin Flow 和 Swift Combine 发出 UI 状态
  • Compose Multiplatform、Jetpack Compose、SwiftUI 前端

适用场景

适合想看 MVI 加状态机在 Android、iOS 和桌面上的小型完整示例的 Kotlin Multiplatform 开发者。它是示例,不是库。

上游仓库
GuilhE/Expressus
GitHub 上的 fork
Guo-astro/Expressus
上游 Star 数
114
分类
开发者工具与基础设施
编程语言
Kotlin
许可证
Apache-2.0
Fork 时间
2022-08-14
同步状态
与上游分叉