The State of Kotlin JS
summary
Kotlin/JS now uses the new kotlin.js Gradle plugin with managed Yarn and Webpack defaults, automatic source maps (since 1.3.60), and hot reload via Gradle continuous builds; tests run on Karma/Mocha and produce HTML reports. TypeScript declaration conversion via Dukat automatic TypeScript→Kotlin externals generates usable externs for many NPM packages. The IR backend promises much smaller bundles and optimizations — IR backend + Closure Compiler 3.9MB→30KB — pre‑alpha IR appears in 1.37.0; demos (Pong, 158‑line physics sim at 60fps, a code‑quiz app) run successfully.
AI-written summary · about
chapters (32)
- 0:00THE STATE OF
- 3:23Unlock the power of code sharing!
- 4:08Today's menu
- 4:49Unified plugin experience!
- 6:55Future-proof DSL
- 8:02Embracing both worlds?
- 9:06Configuring builds
- 11:49Continuous Gradle Builds
- 12:59Source maps
- 14:53Testing - Test Runners & Browsers
- 15:39Testing - Gradle Test Reports
- 16:31Browser APIs
- 17:40Example using browser API
- 19:00Showing off
- 19:47A separated browser API
- 22:25Packages from NPM
- 24:15The proper way
- 24:46It can get confusing...
- 25:49Automatic declaration generation
- 29:37Dukat keeps evolving
- 30:20High level: new IR backend
- 31:19Multi-platform compiler plugins
- 32:06Optimizations
- 32:33Some numbers: kotlinx.coroutines w/ IR
- 33:29Incremental compilation
- 34:14JSDoc & d.ts types generation
- 35:21Kotlin Code
- 36:37Switching worlds
- 37:24On backwards-compatibility
- 39:36ES6 Modules
- 39:53Framework support
- 42:06Hands-on learning
related talks
41mKotlin/JS, Today and Tomorrow
22mKotlin/JS in 1.4 and Beyond
34mIntegrating Kotlin/JS in a Kotlin Multiplatform library
45mFrontend Kotlin from the Trenches
35mTypeScript vs KotlinJS
39mA TypeScript Fan's KotlinJS Adventures
33mUsing Kotlin for JS Client and JVM Server
28mA TypeScript Fan's KotlinJS Adventures
