Support Kotlin Multiplatform (KMP) in the SDKs
KMP is now stable and more libraries are being added to KMP ecosystem. There is a big opportunity for Firebase to be in Multiplatform and support developers adopting this tech.
-
Carlos commented
This sdks are a must for mobile dev!
Analytics, remote config and crashlytics at least should be prioritized
-
Krzysztof Borowy commented
I think this would allow for better adoptation of KMP in smaller teams, to get product out of the door faster
-
Jep RM commented
Analytics at least should be in KMP to create libs
-
Angel Rodriguez commented
This would make a great use case to use with KMP with smaller teams who would want native but don’t have the resources to build a service as well.
-
Himanshu Mistri commented
We have pipeline software in which we want to use common code for accessing firebase backend
-
Jordon de Hoog commented
I unfortunately (like many others it seems) had to go with a different service due to there being no KMP support for Crashlytics, and RemoteConfig.
-
Jep commented
I don't think there is something for analytics. And it would be very helpful
-
Alexey Egin commented
I’m running several kmp apps and it’s sometimes difficult to handle crash reports, because I need to use 3-rd party solutions
-
Messias Junior commented
I started using Supabase because of the lack of KMP support from Firebase. Thats sad
-
mohamed rejeb commented
I start using sentry instead of firebase Crashlytics because of the lack of support for KMP.
-
Vincent Guillebaud commented
I had to use Supabase for my project because Firebase is not compatible for now...
We need Firebase for KMP!
-
Sami Deliceli commented
In this ecosystem, Firebase is a technology that will primarily be lacked. Therefore, full support for KMP will definitely be an indispensable need for many projects.
-
Divyansh Kushwaha commented
Currently, there exists an implementation in community
https://firebaseopensource.com/projects/gitliveapp/firebase-kotlin-sdk/
But would definitely love to have official support. -
Tyler Wilson commented
This would be great to see. Would save some work in my projects. Though I hope to one support wasm/js. Seems like that would be an additional bit of work.
-
Rich Woollcott commented
Would love to see KMP support for web and iOS & Android!
-
Anton Spaans commented
Firebase support would greatly increase KMP'a adoption, since it's a question often asked when suggesting using KMP for mobile applications.
I wouldn't say it's critical, you can create your own two (or more) native implementations, but it's near critical for the speed of adoption.
-
Cédric Dupin commented
I need this to implement my app in iOS
-
Vivien Mahé commented
I'd love to see Firebase coming to KMP!
The most important targets, to me, are Android, iOS, Desktop and Web. -
Louis CAD commented
Below is an **ordered** list from the most critical to the least critical Firebase service I'd like a Kotlin Multiplatform library/SDK for.
Also, very important, it's very important that this SDK improves the API quality to be Kotlin friendly:
- Use inline classes, inline functions where it can improve efficiency/performance.
- Leverage sealed interfaces/classes and/or enums for proper error handling, instead of Java-style exceptions.
- For all asynchronous operations, use coroutines, exposing suspending functions and Flows in place of error-prone callbacks.
Here's my (personal) ordered priority list:
1. Cloud Messaging
2. Authentication
3. Crashlytics (community solutions exist for iOS)
4. Remote Config
5. Cloud Firestore
6. App Check
7. Google Analytics
8. Cloud Storage
9. Realtime Database
10. Machine Learning
To me, iOS and Android support are the most important targets, but macOS, watchOS and tvOS can/should be added right at the start too since many APIs are exactly the same, and Kotlin supports those.
Also, WEB (Kotlin/WASM and Kotlin/JS), and Desktop (Kotlin/JVM) support would be very welcome since it's possible to make apps on all those platforms in one codebase, especially with the advent of Compose Multiplatform that is already fully stable for desktop apps.
If there's some research on KMP support in some libraries/SDKs, feel free to reach out to me, I'd be more than happy to help and give feedback on API design and other KMP related things! -
Rosário Pereira Fernandes commented
Can we update the title to say "KMP" instead of "KMM"? Since JetBrains has stopped using the "KMM" acronym.
Still a valid request though 👍