This project is a Ktor client caching, which is (almost) literally a port of FileStorage but for KMP based on OKIO and kotlinx serialization.
Important
The library uses the LocalStorage for the wasm target, there is a size limitation (about 5mo in total) who need to be manually managed by yourself.
private val publicStorageCaching = KtorFileCaching()
HttpClient {
install(HttpCache) {
publicStorage(publicStorageCaching)
}
}
implementation("io.github.frankois944:ktorfilecaching-jsbrowser:0.6.0")
implementation("io.github.frankois944:ktorfilecaching-jsnode:0.6.0")
implementation("io.github.frankois944:ktorfilecaching:0.6.0")
The current supported targets are :
Target | Supported |
---|---|
jvm | ✅ |
js Node | ✅ |
js browser | ✅ |
wasmJS | ✅ |
iosX64 | ✅ |
iosArm64 | ✅ |
iosSimulatorArm64 | ✅ |
macosX64 | ✅ |
macosArm64 | ✅ |
watchosArm32 | ✅ |
watchosArm64 | ✅ |
watchosSimulatorArm64 | ✅ |
watchosX64 | ✅ |
tvosSimulatorArm64 | ✅ |
tvosX64 | ✅ |
mingwX64 | ✅ |
mingwX64 | ✅ |
linuxX64 | ✅ |
linuxArm64 | ✅ |