Expressus
A Kotlin Multiplatform sample app of a coffee machine, used as a playground for UI state management with Compose and SwiftUI. It illustrates ideas from related articles.
Share on XLicense: Apache-2.0
Overview
Expressus is a Kotlin Multiplatform sample app of a coffee machine. It serves as a playground for UI state management and illustrates ideas from a set of related articles. The shared module uses a Model-View-Intent architecture, a finite state machine to validate state transitions, and state restoration. The UI is built with Compose Multiplatform on desktop, Jetpack Compose on Android, and SwiftUI on iOS.
Key features
- Model-View-Intent architecture in a shared module
- Finite state machine that validates state transitions
- State restoration for both UI state and FSM state
- UI state emitted through Kotlin Flow and Swift Combine
- Compose Multiplatform, Jetpack Compose and SwiftUI front ends
Best for
Kotlin Multiplatform developers who want a small worked example of MVI with a state machine across Android, iOS and desktop. It is a sample, not a library.
- Upstream
- GuilhE/Expressus
- Fork on GitHub
- Guo-astro/Expressus
- Upstream stars
- 114
- Category
- Developer tools and infrastructure
- Language
- Kotlin
- License
- Apache-2.0
- Forked
- 2022-08-14
- Sync status
- Diverged from upstream
More in Developer tools and infrastructure
DBX is a lightweight, cross-platform database client for connecting to and managing over 100 database types. It offers desktop, Docker, and CLI access, plus AI assistance and an MCP Server for database workflows.
Forked 2026-09-29Last synced 2026-09-29License: Apache-2.0Developer tools and infrastructureGitHub
Escrcpy is a graphical desktop interface for scrcpy that mirrors and controls Android devices. It helps developers and testers manage connected devices, including wireless and multi-device workflows.
Forked 2026-09-29Last synced 2026-09-29License: Apache-2.0Developer tools and infrastructureGitHub
Lightpanda is a headless browser built from scratch for AI agents and automation. It aims to be lighter and faster than Chromium and works with Playwright and Puppeteer.
Forked 2026-09-28Last synced 2026-09-29License: AGPL-3.0Developer tools and infrastructureGitHub
A self-hosted open-source monitoring platform for servers, apps and infrastructure. It offers uptime monitoring, distributed checks, incident tracking and alerts.
Forked 2026-09-28Last synced 2026-09-29License: MITDeveloper tools and infrastructureGitHub