Square Workflow: Android and iOS apps composed of state machines defining UI and navigation.
summary
Square reworks Point of Sale into a composable runtime: an open-source Kotlin/Swift library (github.com/square/workflow) that models UI and navigation as state machines with three typed channels (props, rendering, output), runs child workflows and workers (coroutines/flows) for async work, and maps renderings to views via a view registry and layout runners. It ships in production across Android and iOS, scales to hundreds (approaching a thousand) screens, supports alert/modal containers, snapshot persistence, fast unit tests and time machine debugging.
AI-written summary · about
chapters (9)
- 0:00Introduction to Square Workflow
- 1:17Evolution of the library
- 3:02Core workflow concepts
- 6:11Stateful workflow implementation
- 14:38Scaling to complex apps
- 19:50Building a game workflow
- 28:17Demo and features
- 29:19Production use and future
- 30:00Q&A session
related talks
40mThe Rx Workflow Pattern
37mThe Workflow Pattern, Composed
47mThe Reactive Workflow Pattern Update
49mDevelop Your App with Lots of "Flow"
34mReactive Workflows a Year Later
34mBuilding Shared UIs Across Platforms With Compose
40mCompose Without Flow: Unidirectional State with Snapshots and Coroutines
32mAndroid at Scale @Square
