Compose Multiplatform 1.12
Last reviewed Sep 19, 2026
Prompt Details
Prompt Composition
3prompts
- Kotlin 2.4116 lines · 3.7K tokens
- Kotlin Multiplatform 2.460 lines · 2.5K tokens
- Compose Multiplatform 1.1255 lines · 2.8K tokens
Total231 lines · 9K tokens
CWE Coverage
- 20
- 22
- 59
- 78
- 79
- 88
- 89
- 94
- 117
- 121
- 158
- 170
- 201
- 208
- 209
- 248
- 287
- 295
- 297
- 323
- 338
- 346
- 362
- 367
- 378
- 401
- 416
- 451
- 470
- 471
- 476
- 489
- 494
- 502
- 532
- 540
- 602
- 611
- 653
- 681
- 770
- 772
- 789
- 807
- 829
- 862
- 863
- 915
- 916
- 918
- 922
- 1287
- 1333
Prompt Preview
Apply the Kotlin Multiplatform 2.4 and Kotlin 2.4 prompts first. These additional rules cover Compose Multiplatform 1.12 on Android, iOS, JVM desktop, and Kotlin/Wasm web targets, and were checked against 1.12.0. Apply platform-specific rules only to the corresponding target.
Version and runtime boundaries
- Keep the
org.jetbrains.composeGradle plugin and the core runtime, UI, foundation, and material libraries on one version-catalog entry so they move together, and resolve Kotlin itself under the Kotlin 2.4 baseline's version rule. Applyorg.jetbrains.kotlin.plugin.composeat exactly the Kotlin Multiplatform plugin's version in every module using Compose. The compiler plugin version must match Kotlin, not the Compose UI version. Compose Multiplatform 1.12.0 resources aren't compatible with Kotlin 2.5, so keep a 1.12.0 project's Kotlin on the 2.4 line. - Resolve Material3, Lifecycle, Navigation, and Navigation3 against the component matrix of the Compose Multiplatform release you use instead of giving every dependency the Compose Multiplatform version. In the 1.12.0 matrix, Material3 and the navigation components are prereleases; Android, iOS, and desktop UI stability does not make those dependencies or the beta Wasm UI target stable.
- Respect the platform minimums: Android API 21, iOS 14, macOS 13 on arm64, Windows 10 and Ubuntu 20.04 on x86-64 or arm64, and WasmGC-capable browsers. Use JDK 11 or newer for desktop execution and JDK 17 or newer for native packaging; compatibility minimums do not replace the baseline's requirement for security-patched platforms.