A series of KMM(Kotlin Multiplatform Mobile) foundation libraries.
Official release of KMM libraries provided by SuoxingTech. Including:
kmm-arch
which provides fundamental MVVM Architecture Components (i.e.ViewModel
).kmm-kv
which provides Key-value storage solution. JetpackDataStore
for Android andNSUserDefaults
for iOS.kmm-database
which provides wrappedRealm
's Kotlin SDK.kmm-analytics
which provides wrappedFirebaseAnalytics
&FirebaseCrashlytics
.
For more information about released packages you can visit Packages under our organization space.
Library | Dependency | Version |
---|---|---|
kmm_arch |
dev.suoxing.kmm:kmm-arch |
|
kmm_kv |
dev.suoxing.kmm:kmm-kv |
|
kmm_database |
dev.suoxing.kmm:kmm-database |
|
kmm_analytics |
dev.suoxing.kmm:kmm-analytics |
Artifacts are currently published to GitHubPackages, which requires additional config on dependencyResolutionManagement
block:
dependencyResolutionManagement {
repositories {
maven {
name = "GitHubPackages"
url = uri("https://maven.pkg.github.com/SuoxingTech/KMMFoundation")
val prop = java.util.Properties().apply {
load(java.io.FileInputStream(File(rootDir, "local.properties")))
}
val githubUser: String? = prop.getProperty("github.user")
val githubToken: String? = prop.getProperty("github.token")
credentials {
username = githubUser
password = githubToken
}
}
}
}
sourceSets {
val commonMain by getting {
dependencies {
api("dev.suoxing.kmm:kmm-arch:$kmm_arch_ver")
api("dev.suoxing.kmm:kmm-kv:$kmm_kv_ver")
api("dev.suoxing.kmm:kmm-database:$kmm_database_ver")
}
}
}
kmm_analytics
may have issue on iOS builds. you can use only android artifact by add to android dependency like:implementation("dev.suoxing.kmm:kmm_analytics-android:$kmm_analytics_ver")