Kotlin/JS WASM Event Callback - Kotlin-js-wasm Typing CST Test
Loading…
Kotlin/JS WASM Event Callback — Kotlin-js-wasm Code
Logs a message to console when a button is clicked.
# kotlin/demo/Event.kt
import kotlin.browser.document
import org.w3c.dom.HTMLButtonElement
fun main() {
val button = document.createElement("button") as HTMLButtonElement
button.textContent = "Click Event"
document.body?.appendChild(button)
button.onclick = {
console.log("Button clicked!")
Unit
}
}Kotlin-js-wasm Language Guide
Kotlin JS + WebAssembly (kotlin-js-wasm) allows developers to compile Kotlin code into highly optimized WebAssembly modules or JavaScript bundles. It enables strongly typed Kotlin applications to run in browsers, Node.js, and WASI runtimes with excellent interoperability and multiplatform support.
Primary Use Cases
- ▸Browser applications written entirely in Kotlin
- ▸High-performance Wasm modules with shared business logic
- ▸Full-stack Kotlin (Ktor backend + Kotlin/JS/Wasm frontend)
- ▸Node.js and Deno apps using Kotlin
- ▸WASI modules for CLI or edge runtimes
Notable Features
- ▸Two compilation targets: JavaScript (ESBuild) and WebAssembly
- ▸Interop with JS, DOM, and npm libraries
- ▸Kotlin Multiplatform code sharing
- ▸Wasm GC support for efficient memory handling
- ▸Type-safe React wrappers via KVision, Compose for Web
Origin & Creator
Kotlin JS/WASM is developed and maintained by JetBrains as part of the Kotlin Multiplatform ecosystem.
Industrial Note
kotlin-js-wasm is heavily used where teams want type-safe browser code, shared business logic across platforms, or high-performance UI/compute modules inside browser/desktop/edge environments.