buildscript { repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } plugins { id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.plugin.serialization" id "org.jetbrains.kotlin.plugin.compose" version "$kotlin_version" id "org.jetbrains.compose" version "$compose_version" } apply plugin: 'application' kotlin { jvm() js(IR) { browser() binaries.executable() } sourceSets { commonMain { dependencies { implementation kotlin('stdlib') implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:$serialization_version" implementation "dev.inmo:tgbotapi.core:$telegram_bot_api_version" implementation compose.runtime } } jsMain { dependencies { implementation "dev.inmo:tgbotapi.webapps:$telegram_bot_api_version" implementation compose.web.core } } jvmMain { dependencies { implementation "dev.inmo:tgbotapi:$telegram_bot_api_version" implementation "dev.inmo:micro_utils.ktor.server:$micro_utils_version" implementation "io.ktor:ktor-server-cio:$ktor_version" implementation compose.desktop.currentOs } } } } application { mainClassName = "WebAppServerKt" } tasks.getByName("compileKotlinJvm") .dependsOn(jsBrowserDistribution) tasks.getByName("compileKotlinJvm").configure { mustRunAfter jsBrowserDistribution }