Building Your First Multi-Platform Mobile App with KMM for Android and iOS 

Get started with KMM (Kotlin Multiplatform Mobile) by building a simple mobile app while targeting both Android and iOS platforms. KMM is an SDK for iOS and Android app development offering all the combined benefits of creating cross-platform and native apps. 

Course Description

In this course, Building Your First Multi-Platform Mobile App with KMM, you’ll learn the fundamentals of developing mobile apps with KMM. First, you’ll create an empty project with KMM and declare dependencies and platform modules. Second, you’ll set up app’s data layer interfaces. Third, you’ll use Ktor to implement the network layer. Fourth, you’ll use SQLDelight to set up local DB in target platforms. Fifth, you’ll implement domain layers in platforms, and consume the data layer. Sixth, you’ll implement the UI and use the previously implemented domain layer. Seventh, you’ll write unit tests in the common module and target modules. Finally, you’ll write UI tests for  Android and iOS.

By the end of the course you will have mastered:
  • Sharing business logic code between target platforms 
  • Using ‘expect’ to declare expected functions in common module and ‘actual’ to implement those functions in the platform modules. This would help us define the local DB drivers and network dependencies 
  • Using SQLDelight for persistence data in client side 
  • Layers (data layer, business layer and presentation layer) in a mobile app 
  • Using KMM code with SwiftUI in iOS 
  • Using KMM code with Compose in Android 
  • Make HTTP network calls using Ktor library
Drag to resize

Meet the instructor

Drag to resize

Rivu Chakraborty

Content Author
Rivu Chakraborty is a community person, an Android & Kotlin developer, one of the early adopters of Kotlin. He has contributed to multiple Kotlin and Android Development books including authoring Reactive Programming in Kotlin, co-authoring Functional Kotlin the first-ever book to help Kotlin developers learn Functional Programming and use Arrow-kt in their projects, and co-authoring Hands-On Data Structures and Algorithms with Kotlin. Along with organizing community & events, he also speaks at events/conferences and local meetups. More details on his speaking activities are here