diff --git a/PlayWallCore/src/main/java/de/tobias/playpad/design/modern/ModernColor.java b/PlayWallCore/src/main/java/de/tobias/playpad/design/modern/ModernColor.java
index f8c909429cdf16b6d266c6ae3c3d7b9212870002..7da15f82d91761906a3534072254934696a11123 100644
--- a/PlayWallCore/src/main/java/de/tobias/playpad/design/modern/ModernColor.java
+++ b/PlayWallCore/src/main/java/de/tobias/playpad/design/modern/ModernColor.java
@@ -69,7 +69,7 @@ public enum ModernColor implements DisplayableColor {
 		colors = Storage.load(inputStream, StorageTypes.JSON, ModernColorBean[].class);
 	}
 
-	private Optional<ModernColorBean> getCurrentModernColor() {
+	public Optional<ModernColorBean> getCurrentModernColor() {
 		return Stream.of(colors).filter(color -> color.getName().equals(name())).findAny();
 	}
 
diff --git a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/listener/ProjectListener.scala b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/listener/ProjectListener.scala
index a099218e946faf8904553def1ed921d11a833810..a0a8a8aae190a554c88884f474c4cda70fb1a4e8 100644
--- a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/listener/ProjectListener.scala
+++ b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/listener/ProjectListener.scala
@@ -3,10 +3,12 @@ package de.tobias.playpad.plugin.api.websocket.listener
 import de.tobias.playpad.plugin.GlobalAdapter
 import de.tobias.playpad.plugin.api.websocket.WebSocketHandler
 import de.tobias.playpad.plugin.api.websocket.serialize.ProjectSerializer
+import de.tobias.playpad.profile.Profile
 import de.tobias.playpad.project.Project
 
 class ProjectListener extends GlobalAdapter {
 	override def projectOpened(newProject: Project): Unit = {
-		WebSocketHandler.instance.sendUpdate("project-changed", ProjectSerializer.serializeProject(newProject))
+		val jsonObject = ProjectSerializer.serializeProject(newProject, Profile.currentProfile())
+		WebSocketHandler.instance.sendUpdate("project-changed", jsonObject)
 	}
 }
diff --git a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/methods/ProjectCurrentMethod.scala b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/methods/ProjectCurrentMethod.scala
index df30b50fc0631d8057067bd99e035aa9bb239896..ac5cd11148fc9d3fd31276b49bde39f5664fb631 100644
--- a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/methods/ProjectCurrentMethod.scala
+++ b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/methods/ProjectCurrentMethod.scala
@@ -5,6 +5,7 @@ import de.tobias.playpad.PlayPadPlugin
 import de.tobias.playpad.plugin.api.websocket.MethodExecutable
 import de.tobias.playpad.plugin.api.websocket.message.Message
 import de.tobias.playpad.plugin.api.websocket.serialize.ProjectSerializer
+import de.tobias.playpad.profile.Profile
 import org.eclipse.jetty.websocket.api.Session
 
 class ProjectCurrentMethod extends MethodExecutable {
@@ -14,7 +15,7 @@ class ProjectCurrentMethod extends MethodExecutable {
 		if (currentProject == null) {
 			new JsonObject
 		} else {
-			ProjectSerializer.serializeProject(currentProject)
+			ProjectSerializer.serializeProject(currentProject, Profile.currentProfile)
 		}
 	}
 }
diff --git a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/serialize/ProjectSerializer.scala b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/serialize/ProjectSerializer.scala
index aeef56e1080bd10d9dd99c70cba1152aaea60dc8..3c1e157137bf1ed7d405a784bdf87510581443a8 100644
--- a/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/serialize/ProjectSerializer.scala
+++ b/PlayWallPlugins/PlayWallPluginWebAPI/src/main/scala/de/tobias/playpad/plugin/api/websocket/serialize/ProjectSerializer.scala
@@ -1,11 +1,13 @@
 package de.tobias.playpad.plugin.api.websocket.serialize
 
 import com.google.gson.{JsonArray, JsonObject}
+import de.tobias.playpad.design.modern.ModernColor
+import de.tobias.playpad.profile.Profile
 import de.tobias.playpad.project.Project
 
 object ProjectSerializer {
 
-	def serializeProject(project: Project): JsonObject = {
+	def serializeProject(project: Project, profile: Profile): JsonObject = {
 		val result = new JsonObject
 
 		result.addProperty("id", project.getProjectReference.getUuid.toString)
@@ -31,6 +33,11 @@ object ProjectSerializer {
 				padObject.addProperty("position", pad.getPosition)
 				padObject.addProperty("page", pad.getPage.getPosition)
 
+				val padDesign = new JsonObject
+				padDesign.add("normal", serializeDesign(pad.getPadSettings.getDesign.getBackgroundColor))
+				padDesign.add("play", serializeDesign(pad.getPadSettings.getDesign.getPlayColor))
+				padObject.add("design", padDesign)
+
 				padArray.add(padObject)
 			})
 			pageObject.add("pads", padArray)
@@ -38,6 +45,27 @@ object ProjectSerializer {
 			pageArray.add(pageObject)
 		})
 		result.add("pages", pageArray)
+
+		val globalDesign = new JsonObject
+		globalDesign.add("normal", serializeDesign(profile.getProfileSettings.getDesign.getBackgroundColor))
+		globalDesign.add("play", serializeDesign(profile.getProfileSettings.getDesign.getPlayColor))
+		result.add("design", globalDesign)
+
 		result
 	}
+
+	private def serializeDesign(color: ModernColor): JsonObject = {
+		val json = new JsonObject
+
+		color.getCurrentModernColor.ifPresent(c => {
+			json.addProperty("hi", c.getColors.getHi)
+			json.addProperty("low", c.getColors.getLow)
+			json.addProperty("font", c.getColors.getFont)
+			json.addProperty("button", c.getColors.getButton)
+			json.addProperty("playbarBackground", c.getColors.getPlaybar.getBackground)
+			json.addProperty("playbarTrack", c.getColors.getPlaybar.getTrack)
+		})
+
+		json
+	}
 }