Geek and digger Like to play around with new technologies Traveler Passionate about discovering new places About me Love tech communities Has been part of several conferences and meetups. GDG organizer Family guy Most of my free time belongs to 🐶 Lived in different cultures Has been living in ✈ ❤
made by Block (ex. Square) • Realm - NoSQL database • Multiplatform Settings - key-value data storage, supports KeyChain. Wrapper for SharedPreferences and NSUserDefaults.
from Jetbrains. Familiar APIs (mirrors Jetpack Compose Navigation), but experimental and has limitations (no deep links support, limited back handler) • Compose Multiplatform ViewModel - official solution from Jetbrains. Familiar APIs (mirrors Android ViewModel), but experimental and has limitations (additional setup required for iOS and web targets) • Decompose - library for breaking down your code into lifecycle-aware business logic components (aka BLoC), with routing functionality. • PreCompose - navigation, ViewModel, inspired by Jetpack Lifecycle, ViewModel, LiveData and Navigation, provides similar (or even the same) components
from Jetbrains. Experimental, has several limitations (big raw files, multi module). Supports language, density and theme qualifiers. Custom fonts too. • MOKO Resources - system resources manager that provides access to the resources on iOS & Android with the support of the default system localization
UI components for making native-looking iOS applications, including: • cupertino - Compose Multiplatform implementation of iOS-like Cupertino theme and widgets • cupertino-native - UIKit native wrappers for Cupertino Widgets. Allows to seamlessly use some UIKit widgets for iOS • cupertino-adaptive - adaptive theme and wrappers for Cupertino and Material3 widgets. • cupertino-icons-extended - more than 800 most used monochrome Apple SF Symbols as Compose ImageVectors • cupertino-decompose - iOS-like swipe-back animation for the 'predictive back' navigation feature (native-feeling or truly native page transitions and swipe gestures).
(Flutter) in Compose Multiplatform. Map View demonstrates how KMP and Compose's interoperability layer can be used to embed native UIs in Compose. • For Android - Google Map compose library is used. • For IOS - MKMapView is used. • For web - Wasm Html interop library is used to draw DOM elements on canvas. • For desktop - uses OpenStreetMap data to draw map tiles on Compose Canvas.
iOS, in-app purchases, etc.) No magic here • Compose Multiplatform iOS performance != native iOS performance • Configuring build scripts and managing dependencies is an adventure • Mac is required for building iOS or MacOS targets • Wouldn’t recommend for beginners with no Android or iOS experience • Under active development • Best practices have not yet been settled • (sometimes) It’s hard to convince iOS devs to try it out