diff --git a/pom.xml b/pom.xml
index 4fba32841c030ab5cc591247549f29f4869b356e..31ff98f8e478eabe8f131bcdce99c70a4a4e619f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -14,7 +14,6 @@
         <scala-library.version>[2.13.0,)</scala-library.version>
 
         <spark-core.version>[2.9.0,)</spark-core.version>
-        <logback-classic.version>[1.2.3,)</logback-classic.version>
 
         <ormlite-jdbc.version>5.1</ormlite-jdbc.version>
         <ormlite-core.version>5.1</ormlite-core.version>
@@ -22,6 +21,18 @@
         <junit.version>4.12</junit.version>
     </properties>
 
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>de.thecodelabs</groupId>
+                <artifactId>jlibs</artifactId>
+                <version>2.0.5</version>
+                <scope>import</scope>
+                <type>pom</type>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
     <dependencies>
         <dependency>
             <groupId>org.scala-lang</groupId>
@@ -29,17 +40,21 @@
             <version>${scala-library.version}</version>
         </dependency>
 
+        <dependency>
+            <groupId>de.thecodelabs</groupId>
+            <artifactId>libUtils</artifactId>
+        </dependency>
+
         <dependency>
             <groupId>com.sparkjava</groupId>
             <artifactId>spark-core</artifactId>
             <version>${spark-core.version}</version>
         </dependency>
-
         <dependency>
-            <groupId>ch.qos.logback</groupId>
-            <artifactId>logback-classic</artifactId>
-            <version>${logback-classic.version}</version>
+            <groupId>de.thecodelabs</groupId>
+            <artifactId>libLogger-slf4j</artifactId>
         </dependency>
+
         <dependency>
             <groupId>com.j256.ormlite</groupId>
             <artifactId>ormlite-core</artifactId>
@@ -53,7 +68,7 @@
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
-            <version>6.0.5</version>
+            <version>8.0.17</version>
         </dependency>
         <dependency>
             <groupId>com.google.code.gson</groupId>
@@ -143,5 +158,26 @@
                 <enabled>false</enabled>
             </snapshots>
         </repository>
+
+        <repository>
+            <id>release</id>
+            <url>https://maven.thecodelabs.de/artifactory/TheCodeLabs-release</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+        <repository>
+            <id>snapshots</id>
+            <url>https://maven.thecodelabs.de/artifactory/TheCodeLabs-snapshots</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>true</enabled>
+            </snapshots>
+        </repository>
     </repositories>
 </project>
\ No newline at end of file
diff --git a/src/main/resources/config/application.yml b/src/main/resources/config/application.yml
new file mode 100644
index 0000000000000000000000000000000000000000..d592fee4394c346c3c78ecf42cd008e54f43e920
--- /dev/null
+++ b/src/main/resources/config/application.yml
@@ -0,0 +1,10 @@
+name: "PlayWallServer"
+version: "1.0.0"
+build: 1
+identifier: "de.tobias.playpad-server"
+date: "2019-07-24"
+
+main: "de.tobias.playpad.server.PlayPadServer"
+author: "Tobias Ullerich"
+
+basePath: "PlayWall"
\ No newline at end of file
diff --git a/src/main/resources/config/libLogger.yml b/src/main/resources/config/libLogger.yml
new file mode 100644
index 0000000000000000000000000000000000000000..90d50b09a449a7c0afda6c28508ac4ae48c8bed6
--- /dev/null
+++ b/src/main/resources/config/libLogger.yml
@@ -0,0 +1,20 @@
+color:
+    enable: true
+    info: "GREEN"
+    warn: "YELLOW"
+    error: "RED"
+    time: "BLUE"
+    detail: "CYAN"
+    message: "RESET"
+
+dateFormatterPattern: "dd.MM.YY HH:mm:ss"
+
+defaultOutLevel: "DEBUG"
+defaultErrLevel: "ERROR"
+
+showShortPackageName: true
+showClassName: true
+showMethodName: true
+showLineNumber: true
+
+ignoreStandardStream: false
diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml
deleted file mode 100644
index 830a0b0d197ad89cfe2a71a83d3e623ba3e171d1..0000000000000000000000000000000000000000
--- a/src/main/resources/logback.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<configuration>
-    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-
-        <filter class="de.tobias.playpad.server.logger.LogFilter" />
-
-        <encoder>
-            <pattern>%d{yyyy-MM-dd HH:mm:ss} %-4level [%logger{36}] %msg%n</pattern>
-        </encoder>
-    </appender>
-
-    <logger name="deng" level="DEBUG"/>
-
-    <root level="INFO">
-        <appender-ref ref="STDOUT" />
-    </root>
-</configuration>
\ No newline at end of file
diff --git a/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala b/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala
index 7ccf1bd7570d953e32ea4d4671b63c7c0e4abc60..4abe0df47fbe365ee41b2cdaa5047a70a6f7f862 100644
--- a/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala
+++ b/src/main/scala/de/tobias/playpad/server/PlayPadServer.scala
@@ -6,6 +6,9 @@ import java.sql.DriverManager
 import com.j256.ormlite.dao.{Dao, DaoManager}
 import com.j256.ormlite.jdbc.JdbcConnectionSource
 import com.j256.ormlite.table.TableUtils
+import de.thecodelabs.logger.{FileOutputOption, LogLevelFilter, Logger, Slf4JLoggerAdapter}
+import de.thecodelabs.utils.application.ApplicationUtils
+import de.thecodelabs.utils.application.container.PathType
 import de.tobias.playpad.server.account.{Account, Session}
 import de.tobias.playpad.server.plugin.Plugin
 import de.tobias.playpad.server.server.SqlHelper
@@ -22,6 +25,15 @@ import spark.Spark._
  */
 object PlayPadServer extends App {
 
+	val app = ApplicationUtils.registerMainApplication(getClass)
+	ApplicationUtils.addAppListener(_ => {
+		Logger.init(app.getPath(PathType.LOG))
+		Slf4JLoggerAdapter.disableSlf4jDebugPrints()
+		Logger.setLevelFilter(LogLevelFilter.DEBUG)
+		Logger.setFileOutput(FileOutputOption.COMBINED)
+	})
+	app.start(args)
+
 	// Load Config
 	private val settingsLoader = SettingsHandler.loader
 	private val settingsPath = Paths.get("settings.properties")
@@ -57,7 +69,7 @@ object PlayPadServer extends App {
 	private val externalPath = Paths.get(settings.download_folder).toAbsolutePath.toString
 	externalStaticFileLocation(externalPath)
 
-	secure("deploy/keystore.jks", settings.keystorePassword, null, null)
+	//secure("deploy/keystore.jks", settings.keystorePassword, null, null)
 
 	// PlayWall Cloud
 	webSocket("/project", new ProjectSyncHandler(sessionDao, databaseConnection))
@@ -80,9 +92,6 @@ object PlayPadServer extends App {
 	delete("/sessions", new SessionDelete(accountDao), new JsonTransformer)
 	get("/sessions", new SessionGet(accountDao), new JsonTransformer)
 
-	// DEBUG
-	// DebugScreen.enableDebugScreen()
-
 	SettingsHandler.saver.save(settings, settingsPath)
 
 	Runtime.getRuntime.addShutdownHook(new Thread(() => {
diff --git a/src/main/scala/de/tobias/playpad/server/logger/LogFilter.scala b/src/main/scala/de/tobias/playpad/server/logger/LogFilter.scala
deleted file mode 100644
index 2454be66d65cba352ce26a2c80c07ff6f2e42e15..0000000000000000000000000000000000000000
--- a/src/main/scala/de/tobias/playpad/server/logger/LogFilter.scala
+++ /dev/null
@@ -1,18 +0,0 @@
-package de.tobias.playpad.server.logger
-
-import ch.qos.logback.classic.spi.ILoggingEvent
-import ch.qos.logback.core.filter.Filter
-import ch.qos.logback.core.spi.FilterReply
-
-/**
- * Created by tobias on 26.02.17.
- */
-class LogFilter extends Filter[ILoggingEvent] {
-	override def decide(e: ILoggingEvent): FilterReply = {
-		if (e.getLoggerName.contains("com.j256.ormlite.table.TableUtils")) {
-			FilterReply.DENY
-		} else {
-			FilterReply.NEUTRAL
-		}
-	}
-}