DroidKaigi / conference-app-2023

The Official Conference App for DroidKaigi 2023
Apache License 2.0
644 stars 207 forks source link

[Architecture] KMP strategy #68

Closed shinmiy closed 1 year ago

shinmiy commented 1 year ago

Decide on KMP strategy, including what layers to share between the Android and iOS apps

shinmiy commented 1 year ago

Discussed about how we can include KMP in the app and share code between the Android app and the iOS app.

Sharing the repositories would be a good place to start, as was the case last year. The other, more ambitious approach would be to go full KMP and share all code including the ViewModel layer. This, of course, has the upside of sharing everything that's possible to share, but also has the downside of becoming more of a KMM app rather than an Android app for an Android-themed conference. The DroidKaigi conference app has served not just as a companion app for the conference, but has been somewhat of a community-built sample app that represents the trends of the year.

Since we have started to explore the option of Compose for iOS in some select screens, we decided to opt for the later approach for those screens. That way the app can still serve as a "sample" Android app, and also demostrate how an app can start introducing shared code in some features of an existing app.