A Kotlin Multiplatform library to rapidly add images to any project.
Basic-Images uses platform-specific bitmap libraries to display JPEG, PNG, and WEBP files as a Composable.
Add your dependencies from Maven
# in your 'libs.versions.toml' file
[versions]
kotlin = "2.1.0" # gets the latest version, but MUST BE 2.1.0 OR HIGHER
compose = "+" # gets the latest version
lexilabs-basic = "+" #gets the latest version
[libraries]
lexilabs-basic-images = { module = "app.lexilabs.basic:basic-images", version.ref = "lexilabs-basic"}
[plugins] # make sure you're using the JetBrains plugin to import your composables
jetbrainsCompose = { id = "org.jetbrains.compose", version.ref = "compose" }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
then include the library in your gradle build
// in your 'shared/build.gradle.kts' file
plugins {
alias(libs.plugins.jetbrainsCompose)
alias(libs.plugins.compose.compiler)
}
sourceSets {
commonMain.dependencies {
implementation(libs.lexilabs.basic.images)
}
}
// Other dependencies were omitted to focus on the "basics"
import app.lexilabs.basic.images.BasicImage
import app.lexilabs.basic.images.BasicUrl
import app.lexilabs.basic.images.BasicPath
@Composable
fun TestComposable() {
Column {
// Loads an image via URL location
BasicImage(url = BasicUrl("https://picsum.photos/200"))
// Loads an image via Path location
BasicImage(path = BasicPath("appLocalDirectory/cacheDirectory/images/exampleImage.jpeg"))
}
}
In case you need it, here's some additional documentation