Flagsmith / Flagsmith/flagsmith-kotlin-android-client
Kotlin Multiplatform Support
- Dominant language
- Kotlin
- Stars
- 8
- Forks
- 18
- PR merge metrics
- No merged PRs in 30d
Description
In order to make the client work with kmm projects
Need to rework the following:
1. replace usage of GSON with [kotlin.serialization](https://github.com/Kotlin/kotlinx.serialization)
2. replace use of android Context, Handler from FlagsmithAnalytics.kt with kotlin coroutines api
3. replace SharedPreferences in FlagsmithAnalytics.kt with [multiplatform-settings](https://github.com/russhwolf/multiplatform-settings)
4. seems that Fuel (net lib) support kmm, but haven't tested, can consider replacing it with [Ktor](https://ktor.io)
Made a POC with ktor and kotlin.serialization
have not implement Analytics support yet
https://github.com/idan-fido/flagsmith-kotlin-multiplatform
gz#199
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the existing client architecture and FlagsmithAnalytics.kt, then compare it with the linked Kotlin Multiplatform proof of concept. Evaluate the listed migrations for serialization, coroutines, settings, and networking, including the unimplemented analytics support. Done means the client works in KMM projects with analytics support implemented and the chosen replacements integrated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- mobile, mobile-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100