I've got a multiplatform build working for a Kotlin library, publishing to Maven Central for the JVM and NPM for JavaScript. I used Make for the build, and ended up not using the multiplatform language features after struggling with them for some time. Instead I structured the code & build like I would if writing multiplatform C or C++. I had to trick IntelliJ to allow the same source directory to be part of multiple modules. But apart from IntelliJ's limitations it was quite straightforward. Source here: https://github.com/npryce/snodge/tree/kotlin