Skip to content

Kotlin Multiplatform library for loading and showing images in Android, iOS, MacOS, and JVM.

License

Notifications You must be signed in to change notification settings

LexiLabs-App/basic-images

Repository files navigation

Basic-Images

basic

GitHub License GitHub Release Date Maven Central Kotlin

A Kotlin Multiplatform library to rapidly add images to any project.

badge-android badge-ios badge-mac badge-watchos badge-tvos badge-nodejs badge-jsBrowser badge-wasmJsBrowser badge-jvm badge-linux badge-windows

How it works

Basic-Images uses platform-specific bitmap libraries to display JPEG, PNG, and WEBP files as a Composable.

Installation

Add your dependencies from Maven

# in your 'libs.versions.toml' file
[versions]
kotlin = "2.1.20"
compose = "+" # gets the latest version
lexilabs-basic = "+" #gets the latest version

[libraries]
lexilabs-basic-logging = { module = "app.lexilabs.basic:basic-logging", version.ref = "lexilabs-basic" }
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.logging)
        implementation(libs.lexilabs.basic.images)
    }
}

Usage

// 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

About

Kotlin Multiplatform library for loading and showing images in Android, iOS, MacOS, and JVM.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Languages