Simplify Compose, Accelerate Development 🚀
- Query - A seamless data fetching and caching. written more declaratively, leading to more readable code.
- Form - A extensible validation control and form state management. minimizes the impact of re-composition.
- Space - A flexible scoped state management. collaborating with the navigation library to create new scopes.
The Soil library for Kotlin Multiplatform now includes experimental support for Kotlin Wasm. If your browser supports WasmGC, you can run the sample app directly in the browser.
Source code: https://github.com/soil-kt/soil/tree/main/sample/
Note
Currently, the only browsers that support WasmGC are Chrome and Firefox. For the latest compatibility information, please visit https://webassembly.org/features/.
Soil is available on mavenCentral()
.
dependencies {
val soil = "1.0.0-alpha06"
// Query
implementation("com.soil-kt.soil:query-core:$soil")
// Query utilities for Compose
implementation("com.soil-kt.soil:query-compose:$soil")
// optional - helpers for Compose
implementation("com.soil-kt.soil:query-compose-runtime:$soil")
// optional - receivers for Ktor (3.x)
implementation("com.soil-kt.soil:query-receivers-ktor:$soil")
// optional - Test helpers
testImplementation("com.soil-kt.soil:query-test:$soil")
// Form
implementation("com.soil-kt.soil:form:$soil")
// Space
implementation("com.soil-kt.soil:space:$soil")
}
Compose Multiplatform compatibility
Supported targets:
- Android
- iOS
- Desktop (JVM)
- Web (Wasm)
Please visit docs.soil-kt.com for Quick Start, guides of features and more.
Thank you for featuring our library in the following sources:
Copyright 2024 Soil Contributors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.