Skip to content

Latest commit

 

History

History
71 lines (61 loc) · 2.93 KB

README.md

File metadata and controls

71 lines (61 loc) · 2.93 KB

Basic-Images

basic

Basic-Images Maven Central

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.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)
    }
}

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