From 38409988c0ed3e171e77ee691154775b36ed1e00 Mon Sep 17 00:00:00 2001
From: Linnea Gräf <nea@nea.moe>
Date: Thu, 16 Jan 2025 23:25:34 +0100
Subject: feat: Add basic server implementation

---
 server/core/build.gradle.kts | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)
 create mode 100644 server/core/build.gradle.kts

(limited to 'server/core/build.gradle.kts')

diff --git a/server/core/build.gradle.kts b/server/core/build.gradle.kts
new file mode 100644
index 0000000..87f613a
--- /dev/null
+++ b/server/core/build.gradle.kts
@@ -0,0 +1,31 @@
+plugins {
+	kotlin("jvm")
+	kotlin("plugin.serialization")
+	application
+}
+
+val ktor_version = "3.0.3"
+
+dependencies {
+	implementation(platform("io.ktor:ktor-bom:$ktor_version"))
+	implementation("io.ktor:ktor-server-netty")
+	implementation("io.ktor:ktor-server-status-pages")
+	implementation("io.ktor:ktor-server-content-negotiation")
+	implementation("io.ktor:ktor-server-openapi")
+	implementation("io.ktor:ktor-serialization-kotlinx-json")
+	implementation("io.ktor:ktor-server-compression")
+	implementation(project(":database:impl"))
+
+	runtimeOnly("ch.qos.logback:logback-classic:1.5.16")
+	runtimeOnly("org.xerial:sqlite-jdbc:3.45.3.0")
+}
+
+java {
+	toolchain.languageVersion.set(JavaLanguageVersion.of(21))
+}
+application {
+	val isDevelopment: Boolean = project.ext.has("development")
+	applicationDefaultJvmArgs = listOf("-Dio.ktor.development=$isDevelopment",
+									   "-Dledger.databasefolder=${project(":mod").file("run/money-ledger").absoluteFile}")
+	mainClass.set("moe.nea.ledger.server.core.ApplicationKt")
+}
-- 
cgit