[versions] # Kotlin and related libraries kotlin = "2.1.20" kotlinxCoroutines = "1.10.1" kotlinxSerialization = "1.8.1" kotlinxDatetime = "0.6.1" # Kotlin Wrappers for JS kotlinWrappers = "1.0.0-pre.710" # Compose composeMultiplatform = "1.8.0" #"1.7.3" # Ktor ktor = "3.1.2" # Monitoring micrometer = "1.12.2" # Database exposed = "0.52.0" postgresql = "42.7.3" hikari = "5.1.0" h2 = "2.2.224" # Caching redisson = "3.27.1" caffeine = "3.1.8" # Service Discovery consul = "2.2.10" orbitz-consul = "1.5.3" # Logging logback = "1.5.18" logbackJsonEncoder = "8.0" # Testing junit = "4.13.2" junitJupiter = "5.12.0" # Utilities uuid = "0.8.4" bignum = "0.3.10" [libraries] # Kotlin and related libraries kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" } kotlinx-coroutines-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core", version.ref = "kotlinxCoroutines" } kotlinx-coroutines-test = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-test", version.ref = "kotlinxCoroutines" } kotlinx-coroutines-swing = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-swing", version.ref = "kotlinxCoroutines" } kotlinx-serialization-json = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinxSerialization" } kotlinx-datetime = { group = "org.jetbrains.kotlinx", name = "kotlinx-datetime", version.ref = "kotlinxDatetime" } # Ktor ktor-server-core = { module = "io.ktor:ktor-server-core-jvm", version.ref = "ktor" } ktor-server-netty = { module = "io.ktor:ktor-server-netty-jvm", version.ref = "ktor" } ktor-server-html-builder = { module = "io.ktor:ktor-server-html-builder", version.ref = "ktor" } ktor-server-config-yaml = { module = "io.ktor:ktor-server-config-yaml", version.ref = "ktor" } ktor-server-tests = { module = "io.ktor:ktor-server-test-host-jvm", version.ref = "ktor" } ktor-server-contentNegotiation = { module = "io.ktor:ktor-server-content-negotiation", version.ref = "ktor" } ktor-server-serializationKotlinxJson = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" } ktor-server-cors = { module = "io.ktor:ktor-server-cors", version.ref = "ktor" } ktor-server-callLogging = { module = "io.ktor:ktor-server-call-logging", version.ref = "ktor" } ktor-server-defaultHeaders = { module = "io.ktor:ktor-server-default-headers", version.ref = "ktor" } ktor-server-statusPages = { module = "io.ktor:ktor-server-status-pages", version.ref = "ktor" } ktor-server-auth = { module = "io.ktor:ktor-server-auth", version.ref = "ktor" } ktor-server-authJwt = { module = "io.ktor:ktor-server-auth-jwt", version.ref = "ktor" } ktor-server-openapi = { module = "io.ktor:ktor-server-openapi", version.ref = "ktor" } ktor-server-swagger = { module = "io.ktor:ktor-server-swagger", version.ref = "ktor" } ktor-server-rateLimit = { module = "io.ktor:ktor-server-rate-limit", version.ref = "ktor" } # Ktor Client ktor-client-core = { module = "io.ktor:ktor-client-core", version.ref = "ktor" } ktor-client-js = { module = "io.ktor:ktor-client-js", version.ref = "ktor" } ktor-client-contentNegotiation = { module = "io.ktor:ktor-client-content-negotiation", version.ref = "ktor" } ktor-client-serializationKotlinxJson = { module = "io.ktor:ktor-serialization-kotlinx-json", version.ref = "ktor" } # Database exposed-core = { module = "org.jetbrains.exposed:exposed-core", version.ref = "exposed" } exposed-dao = { module = "org.jetbrains.exposed:exposed-dao", version.ref = "exposed" } exposed-jdbc = { module = "org.jetbrains.exposed:exposed-jdbc", version.ref = "exposed" } exposed-kotlinDatetime = { module = "org.jetbrains.exposed:exposed-kotlin-datetime", version.ref = "exposed" } postgresql-driver = { module = "org.postgresql:postgresql", version.ref = "postgresql" } hikari-cp = { module = "com.zaxxer:HikariCP", version.ref = "hikari" } h2-driver = { module = "com.h2database:h2", version.ref = "h2" } # Logging logback = { module = "ch.qos.logback:logback-classic", version.ref = "logback" } logback-json-encoder = { module = "net.logstash.logback:logstash-logback-encoder", version.ref = "logbackJsonEncoder" } # Monitoring micrometer-prometheus = { group = "io.micrometer", name = "micrometer-registry-prometheus", version.ref = "micrometer" } ktor-server-metrics-micrometer = { group = "io.ktor", name = "ktor-server-metrics-micrometer", version.ref = "ktor" } # Testing junitJupiter = { group = "org.junit.jupiter", name = "junit-jupiter", version.ref = "junitJupiter" } # Utilities uuid = { group = "com.benasher44", name = "uuid", version.ref = "uuid" } bignum = { group = "com.ionspin.kotlin", name = "bignum", version.ref = "bignum" } # Caching redisson = { group = "org.redisson", name = "redisson", version.ref = "redisson" } caffeine = { group = "com.github.ben-manes.caffeine", name = "caffeine", version.ref = "caffeine" } # Service Discovery consul-client = { module = "com.orbitz.consul:consul-client", version.ref = "orbitz-consul" } consul-api = { module = "com.ecwid.consul:consul-api", version.ref = "consul" } ktor-client-cio = { module = "io.ktor:ktor-client-cio", version.ref = "ktor" } # Kotlin Wrappers for JS/React kotlin-wrappers-bom = { group = "org.jetbrains.kotlin-wrappers", name = "kotlin-wrappers-bom", version.ref = "kotlinWrappers" } kotlin-react = { group = "org.jetbrains.kotlin-wrappers", name = "kotlin-react" } kotlin-emotion = { group = "org.jetbrains.kotlin-wrappers", name = "kotlin-emotion" } [plugins] kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } compose-multiplatform = { id = "org.jetbrains.compose", version.ref = "composeMultiplatform" } ktor = { id = "io.ktor.plugin", version.ref = "ktor" } kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }