We will share our thought process on the business case of a multiplatform core for mobile apps, and why it might not make sense in some cases. We will also share our experience in incremental transition in a 9-month timeframe alongside product development in parallel, and a high-level glimpse of the architecture.
AppCore, our multi-platform framework:
The AppCore project powers the domain layer of both our Android and our iOS apps, and is enabled by Kotlin Multiplatform Mobile. It involves:
- A database-first, unidirectional data flow architecture, Kotlin Coroutines and SQLDelight.
- A strong emphasis on caching, synchronisation and persistence to facilitate the continuity and fluidity of our user experience.
- Various backend integrations through Apollo GraphQL, Google Cloud Firestore and WebSocket.
Huge shout out to Anders who is our iOS engineer, who was leading our Multiplatform efforts, and was key in the preparation of this session. Unfortunately, he didn’t make it to Berlin.