Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What’s New in Compose Multiplatform - A Live To...
Search
Márton Braun
July 01, 2024
Programming
2
520
What’s New in Compose Multiplatform - A Live Tour (droidcon Berlin 2024)
Márton Braun
July 01, 2024
Tweet
Share
More Decks by Márton Braun
See All by Márton Braun
What’s New in Compose Multiplatform - A Live Tour (droidcon London 2024)
zsmb
1
470
Kotlin Multiplatform at Stable and Beyond (Kotlin Vienna, October 2024)
zsmb
2
450
Composing an API the *right* way (Droidcon New York 2024)
zsmb
2
700
Composing an API the *right* way (Droidcon Berlin 2024)
zsmb
2
1.2k
Build a Multiplatform Future with Kotlin (Craft Conference 2024)
zsmb
1
220
Simplifying Build Configuration with Amper (KotlinConf 2024)
zsmb
3
230
Building with Kotlin for Android and Beyond (Google I/O Extended 2024 Budapest)
zsmb
2
660
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
2
1.5k
Build Apps for iOS, Android & Desktop in 100% Kotlin With Compose Multiplatform (mDevCamp 2024)
zsmb
2
800
Other Decks in Programming
See All in Programming
ローコードSaaSのUXを向上させるためのTypeScript
taro28
1
610
Ethereum_.pdf
nekomatu
0
460
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
170
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
910
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
880
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.3k
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
2
660
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
Remix on Hono on Cloudflare Workers
yusukebe
1
280
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
870
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.3k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Done Done
chrislema
181
16k
RailsConf 2023
tenderlove
29
900
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
GraphQLとの向き合い方2022年版
quramy
43
13k
A Tale of Four Properties
chriscoyier
156
23k
Producing Creativity
orderedlist
PRO
341
39k
Unsuck your backbone
ammeep
668
57k
Transcript
Sebastian Aigner @sebi_io What's New in Compose Multiplatform: A Live
Tour @zsmb13 Márton Braun
What if you could just… do iOS? turns out: you
probably can!
None
What we'll build today
Features • Fully shared Compose UI • Logic separated from
UI • Navigation between pages • Resources & localization • Data persistence • Dependency injection
jb.gg/compose
Guidelines jb.gg/compose
Emulators Márton’s machine Sebastian’s machine
Demo!
Let's extract some logic! • Jetpack ViewModel • KMP-ObservableViewModel •
Voyager • Orbit MVI • Molecule • … ⚗
Let's store some data! • Room • Realm • SQLDelight
• KStore • DataStore • Multiplatform Settings 💽
We gotta inject things! • Koin • Kodein • kotlin-inject
• … 💉
We gotta navigate! • Compose Navigation • Voyager • PreCompose
• … 🧭
Compose Navigation • Converted to Multiplatform by JetBrains • Popular,
well-established APIs (you might already know them!) • Minimizing the work for bringing existing Android apps to multiplatform • Keeps evolving!
Soon™: Type-safe multiplatform navigation!
Kotlin Multiplatform libraries
Get started: jb.gg/compose
Try Compose Multiplatform! twitter: @sebi_io @zsmb13 github: @SebastianAigner @zsmb13 [sebastian,marton]@jetbrains.com
jb.gg/compose