Skip to content

Releases and compatibility

Which versions go together, which targets each module runs on, and what a build needs. AwakeKt Engine is alpha: the API and the published module set can change between releases.

Release notes are on GitHub Releases.

Versions on this page

Release train Version Tags Modules
Core 0.19.0 (this documentation version) v* Every published module except the Vulkan family. All share one version.
Vulkan 0.1.34, built against Core 0.17.0 vulkan-v* com.awakekt.awake.backend:vulkan, com.awakekt.awake:vulkan-kmp, com.awakekt.awake:vulkan-kmp-android-native
WebGPU 0.19.0-SNAPSHOT, built from Core 0.19.0 none; each Core v* tag publishes it com.awakekt.awake.backend:webgpu

The install snippets pair the Vulkan release with the Core release it was built against:

gradle/libs.versions.toml
[versions]
awake = "0.17.0"
awake-vulkan = "0.1.34"

Core and Vulkan pairing

Rule Detail
Each Vulkan release names the Core release it was built against Its POM and Gradle module metadata depend on that exact Core version: the newest stable Core v* tag when the Vulkan release was cut.
The newest of each is not always a pair A Core release can be newer than every Vulkan release. Core 0.19.0 pairs with Vulkan only once a Vulkan release names it.
Check a pair Read the Core dependency versions in the Vulkan release's POM on Maven Central.
Core releases do not move Vulkan A Core release publishes no Vulkan module and changes no Vulkan version.
Core never depends on Vulkan No published Core module has a main-source dependency on the Vulkan family.
Keep Core modules on one version Every Core module you declare uses the same awake version.
Mixed versions line up for Gradle builds Every Core release publishes com.awakekt.awake:bom, which constrains all Core modules to that release. Each Core module, and the Vulkan backend at the Core release it names, depends on it, so a build holding two Core versions resolves every Core module to the newest. Installation shows how to state the version and how a Maven build imports it.

WebGPU

Item Value
Published as Snapshot only. It builds on a wgpu4k snapshot, and Maven Central releases cannot depend on a snapshot.
Version to use <Core release>-SNAPSHOT: each Core release publishes one, built from that release, with every Core module at exactly the release and held there strictly. The newer snapshots main publishes are built against Core snapshots.
Repository https://central.sonatype.com/repository/maven-snapshots/ for Awake, and https://awakekt.github.io/awake/ for the io.ygdrasil group (wgpu4k), which Sonatype no longer serves
Pinned dependencies The published module constrains the wgpu4k and webgpu-ktypes snapshots to the builds it was tested with, hosted at the second repository.

Targets

Modules Android Desktop JVM iOS (iosArm64, iosSimulatorArm64) Web (wasmJs)
Every Core module not listed below Yes Yes Yes Yes
backend:jolt Yes Yes Yes Yes, through the jolt-physics npm module. Shape casts with a hull, mesh or heightfield throw PhysicsCapabilityException.
backend:webgpu — Yes, over wgpu-native — Yes
backend:vulkan, vulkan-kmp Yes Yes Yes, through MoltenVK —
vulkan-kmp-android-native Yes — — —
Platform Rendering backend
Desktop (JVM) Vulkan
Android Vulkan
iOS Vulkan through MoltenVK
Web (wasmJs) WebGPU

Build requirements

Values the engine is built with.

Item Value Source
Kotlin 2.4.20 gradle/libs.versions.toml
JVM toolchain 17 (backend:webgpu: 25) jvmToolchain(...)
Android minSdk 33 gradle.properties
Android compileSdk 35 gradle.properties

Documentation versions

Item Behavior
One site per release Each Core release publishes a matching documentation version. Pick it in the header's version selector.
latest The newest Core release.
dev Development builds (-dev.* versions). Never promoted to latest.

See also