Skip to content
Image docs0.3

Bluetape4k Image Manual

Latest stable Based on Image release 0.3.0

bluetape4k-image provides two image-processing families for Kotlin/JVM applications. The bluetape4k-images path builds on Scrimage and Java2D for immutable image operations, filters, transforms, analysis, CAPTCHA, OCR, and framework integration. The libvips path exposes a binding-neutral API with a Java 21 JNI backend and a Java 25 FFM backend for native processing.

This manual is organized around decisions and production tasks rather than package names. Start with the runtime and backend choice, complete one runnable workshop, and then open the module reference when you need exact API or configuration details.

Applications select one central BOM version: io.github.bluetape4k:bluetape4k-dependencies:<version>. They do not need to align the image BOM, Scrimage, Ktor, Spring Boot, or native binding versions independently.

The technical baseline is the immutable 0.3.0 release. It contains 8 published libraries, 1 published image BOM, 5 runnable examples, and 1 non-published benchmark project.

Features added after this tag are deliberately absent. Every source link in this manual resolves against the 0.3.0 release tag or its pinned commit.

  • Use Getting started to establish the dependency and runtime baseline.
  • Read Backend selection before choosing Scrimage, JVips, or the Java 25 FFM binding.
  • Follow the Learning path for an ordered route through processing, framework integration, OCR, and native execution.
  • Open the Repository map to see how the 15 release projects fit together.
  • Read Testing and operations before shipping native libraries, OCR data, storage, or CDN configuration.

The library owns image adapters, common operations, and framework wiring. The application still owns upload limits, accepted formats, file and object-store policy, native package installation, OCR language data, lifecycle shutdown, and production observability.