Skip to content
ktox logo

ktox: Kotlin → {x} transpilers

ktox is a family of Kotlin-to-X transpilers, enabling you to write and share Kotlin code across multiple target languages and platforms. Released on Maven Central under the com.isycat group.

ktox-lua: Kotlin → Lua transpiler. For Dota 2, and other Lua-based environments.

ktox-js: Kotlin → JavaScript transpiler, with a Valve Panorama sub-target.

ktox-cpp: Kotlin → C++ transpiler.

ktox-panorama: Valve Panorama UI target — a type-safe .dota.xml.kts layout DSL, @PanoramaView panel classes, and Sass compilation.

Building for Dota 2? Use ktox-dota

ktox-dota is a complete Kotlin toolchain for Dota 2 custom games, built on this suite. It combines ktox-lua, ktox-js, and ktox-panorama into a single Gradle plugin and adds everything an addon needs: typed Lua/VScript and Panorama APIs, scripts/npc KeyValues generation from annotations, @Dota2Class engine-bound classes, a Panorama layout DSL, and one-command deploy with a fast dev watch mode.

Write the whole addon — server logic, UI, and data — in Kotlin.