diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8494fd639705f17353f56a2b57260fddd98cd968..84fca2d5342807b9d3a86ecc72577821a03c3b8b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -31,7 +31,7 @@ ktlint:
   stage: test
   script:
     - git submodule update
-    - ./gradlew --no-daemon :check
+    - ./gradlew --no-daemon briar-desktop:check
   rules:
     - if: '$CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS'
       when: never # avoids duplicate jobs for branch and MR
@@ -44,7 +44,7 @@ b_jar:
   script:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=nightly -x kaptKotlin packageUberJarForCurrentOS
-    - mv build/compose/jars/Briar-*.jar ./briar-desktop.jar
+    - mv briar-desktop/build/compose/jars/Briar-*.jar ./briar-desktop.jar
   artifacts:
     paths:
       - briar-desktop.jar
@@ -58,7 +58,7 @@ b_bullseye_deb:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=nightly -x kaptKotlin packageDeb
     - utils/finalize-deb.sh
-    - mv build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-debian-bullseye.deb
+    - mv briar-desktop/build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-debian-bullseye.deb
   artifacts:
     paths:
       - briar-desktop-debian-bullseye.deb
@@ -73,7 +73,7 @@ b_20_ubuntu_deb:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=nightly -x kaptKotlin packageDeb
     - utils/finalize-deb.sh
-    - mv build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-20.04.deb
+    - mv briar-desktop/build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-20.04.deb
   artifacts:
     paths:
       - briar-desktop-ubuntu-20.04.deb
@@ -88,7 +88,7 @@ b_18_ubuntu_deb:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=nightly -x kaptKotlin packageDeb
     - utils/finalize-deb.sh
-    - mv build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-18.04.deb
+    - mv briar-desktop/build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-18.04.deb
   artifacts:
     paths:
       - briar-desktop-ubuntu-18.04.deb
@@ -101,7 +101,7 @@ rb_jar:
   script:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=beta -x kaptKotlin packageUberJarForCurrentOS
-    - mv build/compose/jars/Briar-*.jar ./briar-desktop.jar
+    - mv briar-desktop/build/compose/jars/Briar-*.jar ./briar-desktop.jar
   artifacts:
     paths:
       - briar-desktop.jar
@@ -115,7 +115,7 @@ rb_bullseye_deb:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=beta -x kaptKotlin packageDeb
     - utils/finalize-deb.sh
-    - mv build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-debian-bullseye.deb
+    - mv briar-desktop/build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-debian-bullseye.deb
   artifacts:
     paths:
       - briar-desktop-debian-bullseye.deb
@@ -130,7 +130,7 @@ rb_20_ubuntu_deb:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=beta -x kaptKotlin packageDeb
     - utils/finalize-deb.sh
-    - mv build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-20.04.deb
+    - mv briar-desktop/build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-20.04.deb
   artifacts:
     paths:
       - briar-desktop-ubuntu-20.04.deb
@@ -145,7 +145,7 @@ rb_18_ubuntu_deb:
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64 --no-daemon kaptKotlin
     - ./gradlew -Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 --no-daemon -PbuildType=beta -x kaptKotlin packageDeb
     - utils/finalize-deb.sh
-    - mv build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-18.04.deb
+    - mv briar-desktop/build/compose/binaries/main/deb/briar-desktop.deb ./briar-desktop-ubuntu-18.04.deb
   artifacts:
     paths:
       - briar-desktop-ubuntu-18.04.deb
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 14d0aad908ad778d352b636de229dd240f7e6a44..9c5404a6336171ee385d1b372f14cfdcde56fbcb 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -38,8 +38,8 @@
       </profile>
     </annotationProcessing>
     <bytecodeTargetLevel target="1.8">
-      <module name="Briar-compose.main" target="11" />
-      <module name="Briar-compose.test" target="11" />
+      <module name="briar-desktop.desktop.main" target="17" />
+      <module name="briar-desktop.desktop.test" target="17" />
     </bytecodeTargetLevel>
   </component>
-</project>
\ No newline at end of file
+</project>
diff --git a/.idea/runConfigurations/Briar_Desktop.xml b/.idea/runConfigurations/Briar_Desktop.xml
index ddf5232dce5cc4d1aec65ea54a1bcb5eaf130412..1ad687289eee3f4d5ce59bd931749e2db1126a8d 100644
--- a/.idea/runConfigurations/Briar_Desktop.xml
+++ b/.idea/runConfigurations/Briar_Desktop.xml
@@ -1,8 +1,9 @@
 <component name="ProjectRunConfigurationManager">
   <configuration default="false" name="Briar Desktop" type="JetRunConfigurationType">
     <option name="MAIN_CLASS_NAME" value="org.briarproject.briar.desktop.MainKt" />
-    <module name="briar-desktop.main" />
+    <module name="briar-desktop.briar-desktop.main" />
     <option name="PROGRAM_PARAMETERS" value="--debug" />
+    <shortenClasspath name="NONE" />
     <method v="2">
       <option name="Make" enabled="true" />
     </method>
diff --git a/.idea/runConfigurations/TestDeterministicConversationsKt.xml b/.idea/runConfigurations/TestDeterministicConversationsKt.xml
index 839d48b803ecdd090435f30c0989cecbc2cf0f62..00e91751162f90f36ce9d7ec5ac8aab2642d7ba6 100644
--- a/.idea/runConfigurations/TestDeterministicConversationsKt.xml
+++ b/.idea/runConfigurations/TestDeterministicConversationsKt.xml
@@ -1,7 +1,7 @@
 <component name="ProjectRunConfigurationManager">
   <configuration default="false" name="TestDeterministicConversationsKt" type="JetRunConfigurationType" nameIsGenerated="true">
     <option name="MAIN_CLASS_NAME" value="org.briarproject.briar.desktop.TestDeterministicConversationsKt" />
-    <module name="briar-desktop.test" />
+    <module name="briar-desktop.briar-desktop.test" />
     <shortenClasspath name="NONE" />
     <method v="2">
       <option name="Make" enabled="true" />
diff --git a/.idea/runConfigurations/TestMixedConversationsKt.xml b/.idea/runConfigurations/TestMixedConversationsKt.xml
deleted file mode 100644
index 4f7af5c8171df89c9d910a63ab238e59a680ad32..0000000000000000000000000000000000000000
--- a/.idea/runConfigurations/TestMixedConversationsKt.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<component name="ProjectRunConfigurationManager">
-  <configuration default="false" name="TestMixedConversationsKt" type="JetRunConfigurationType" nameIsGenerated="true">
-    <option name="MAIN_CLASS_NAME" value="org.briarproject.briar.desktop.TestMixedConversationsKt" />
-    <module name="briar-desktop.test" />
-    <shortenClasspath name="NONE" />
-    <method v="2">
-      <option name="Make" enabled="true" />
-    </method>
-  </configuration>
-</component>
\ No newline at end of file
diff --git a/.idea/runConfigurations/TestRandomConversationsKt.xml b/.idea/runConfigurations/TestRandomConversationsKt.xml
deleted file mode 100644
index af71c5356efe7d3a61d74b2ed99a48001eeb641e..0000000000000000000000000000000000000000
--- a/.idea/runConfigurations/TestRandomConversationsKt.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<component name="ProjectRunConfigurationManager">
-  <configuration default="false" name="TestRandomConversationsKt" type="JetRunConfigurationType" nameIsGenerated="true">
-    <option name="MAIN_CLASS_NAME" value="org.briarproject.briar.desktop.TestRandomConversationsKt" />
-    <module name="briar-desktop.test" />
-    <shortenClasspath name="NONE" />
-    <method v="2">
-      <option name="Make" enabled="true" />
-    </method>
-  </configuration>
-</component>
\ No newline at end of file
diff --git a/.idea/runConfigurations/TestListConversationDataKt.xml b/.idea/runConfigurations/TestWithTwoConnectedTemporaryAccountsKt.xml
similarity index 51%
rename from .idea/runConfigurations/TestListConversationDataKt.xml
rename to .idea/runConfigurations/TestWithTwoConnectedTemporaryAccountsKt.xml
index 969cc64f7176225d6bb1e238d625424055f63b5a..d3a36144db3a8013a281bbd7900826767921a6f7 100644
--- a/.idea/runConfigurations/TestListConversationDataKt.xml
+++ b/.idea/runConfigurations/TestWithTwoConnectedTemporaryAccountsKt.xml
@@ -1,7 +1,7 @@
 <component name="ProjectRunConfigurationManager">
-  <configuration default="false" name="TestListConversationDataKt" type="JetRunConfigurationType" nameIsGenerated="true">
-    <option name="MAIN_CLASS_NAME" value="org.briarproject.briar.desktop.testdata.TestListConversationDataKt" />
-    <module name="briar-desktop.test" />
+  <configuration default="false" name="TestWithTwoConnectedTemporaryAccountsKt" type="JetRunConfigurationType" nameIsGenerated="true">
+    <option name="MAIN_CLASS_NAME" value="org.briarproject.briar.desktop.TestWithTwoConnectedTemporaryAccountsKt" />
+    <module name="briar-desktop.briar-desktop.test" />
     <shortenClasspath name="NONE" />
     <method v="2">
       <option name="Make" enabled="true" />
diff --git a/.tx/config b/.tx/config
index 10c587563c9a87ff60b82460733d368f6852908f..33305b01d6df433cae9a40557e673f0e172f6562 100644
--- a/.tx/config
+++ b/.tx/config
@@ -3,9 +3,8 @@ host = https://www.transifex.com
 lang_map = zh-Hans: zh_CN, zh-Hant: zh_TW
 
 [briar.briar-desktop]
-file_filter = src/main/resources/strings/BriarDesktop_<lang>.properties
+file_filter = briar-desktop/src/main/resources/strings/BriarDesktop_<lang>.properties
 minimum_perc = 50
-source_file = src/main/resources/strings/BriarDesktop.properties
+source_file = briar-desktop/src/main/resources/strings/BriarDesktop.properties
 source_lang = en
 type = UNICODEPROPERTIES
-
diff --git a/HACKING.md b/HACKING.md
index 6cdd07f57fa47168571862e9ca960972bbccbe1c..0cc74c4bb8e50c4fa38bf06eab73a4db5690dae6 100644
--- a/HACKING.md
+++ b/HACKING.md
@@ -5,7 +5,7 @@
 When working on the code base, consider running the style checks and unit
 tests locally, because the CI will complain anyway:
 
-    ./gradlew :check
+    ./gradlew briar-desktop:check
 
 The above command does both. To run style checks only:
 
@@ -17,7 +17,7 @@ If that fails, try formatting:
 
 Running unit tests only:
 
-    ./gradlew :test --tests "*"
+    ./gradlew briar-desktop:test --tests "*"
 
 That will run tests from the desktop project only. On the other hand, this
 will also run tests on briar core:
diff --git a/TRANSLATION.md b/TRANSLATION.md
index 43ab7bd131a28b081026d813ae153ac35cdd693a..7f0d52e5cd6514e437adecc7c05dad358ba75a03 100644
--- a/TRANSLATION.md
+++ b/TRANSLATION.md
@@ -14,7 +14,8 @@ _This section is of interest only for developers of Briar Desktop_.
 To update translations locally, first install `transifex-client`. You can then pull updates with `tx pull -a`.
 
 If that command added a language that was previously not supported,
-you have to manually insert the language code in [UnencryptedSettings.kt](./src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt)
+you have to manually insert the language code
+in [UnencryptedSettings.kt](./briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt)
 for it to be shown in the language selection.
 
 The Localization Lab has some instructions and advice for
@@ -27,7 +28,8 @@ This is how updating translations in Briar Desktop works:
 * We pull the updates from Transifex and commit them before each release
 * Occasionally we make minor updates locally and push them to Transifex
 
-Translations only happen on Transifex. You might want to make your changes through Transifex by joining the respective language teams.
+Translations only happen on Transifex.
+You might want to make your changes through Transifex by joining the respective language teams.
 
 To test Briar Desktop in your language,
 you can simply change the respective setting in the settings screen.
diff --git a/LICENSE.txt b/briar-desktop/LICENSE.txt
similarity index 100%
rename from LICENSE.txt
rename to briar-desktop/LICENSE.txt
diff --git a/briar-desktop/build.gradle.kts b/briar-desktop/build.gradle.kts
new file mode 100644
index 0000000000000000000000000000000000000000..b2b80c0fe658fbab720ade67297c976c092983ce
--- /dev/null
+++ b/briar-desktop/build.gradle.kts
@@ -0,0 +1,124 @@
+/*
+ * Briar Desktop
+ * Copyright (C) 2021-2022 The Briar Project
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ */
+
+@file:Suppress("HardCodedStringLiteral")
+
+import org.jetbrains.compose.compose
+import org.jetbrains.compose.desktop.application.dsl.TargetFormat
+import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
+
+plugins {
+    kotlin("jvm") version "1.6.10"
+    kotlin("kapt") version "1.6.10"
+    id("org.jetbrains.compose") version "1.1.1"
+    id("java")
+    id("idea")
+    id("org.jlleitschuh.gradle.ktlint") version "10.1.0"
+    id("org.briarproject.briar.desktop.build-data-gradle-plugin")
+}
+
+val versionCode = "0.2.1"
+val buildType = if (project.hasProperty("buildType")) project.properties["buildType"] else "snapshot"
+group = "app.briar.desktop"
+version = "$versionCode-$buildType"
+
+buildData {
+    packageName = "org.briarproject.briar.desktop"
+}
+
+dependencies {
+    implementation(compose.desktop.currentOs)
+    implementation(compose.materialIconsExtended)
+    // needed to access Dispatchers.Swing for EventExecutor
+    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-swing:1.6.1")
+
+    implementation("com.github.ajalt.clikt:clikt:3.4.0")
+    implementation("com.ibm.icu:icu4j:70.1")
+
+    implementation(project(path = ":briar-core", configuration = "default"))
+    implementation(project(path = ":bramble-java", configuration = "default"))
+
+    implementation("io.github.microutils:kotlin-logging-jvm:2.1.21")
+    implementation("org.slf4j:jul-to-slf4j:1.7.36")
+    implementation("ch.qos.logback:logback-classic:1.2.11")
+
+    val daggerVersion = "2.24"
+    kapt("com.google.dagger:dagger-compiler:$daggerVersion")
+
+    testImplementation(kotlin("test-testng"))
+    testImplementation("commons-io:commons-io:2.11.0")
+    kaptTest("com.google.dagger:dagger-compiler:$daggerVersion")
+}
+
+tasks.test {
+    useTestNG()
+}
+
+tasks.withType<KotlinCompile> {
+    kotlinOptions.jvmTarget = "11"
+}
+
+tasks.withType<org.gradle.jvm.tasks.Jar> {
+    exclude("META-INF/BC1024KE.RSA", "META-INF/BC1024KE.SF", "META-INF/BC1024KE.DSA")
+    exclude("META-INF/BC2048KE.RSA", "META-INF/BC2048KE.SF", "META-INF/BC2048KE.DSA")
+}
+
+tasks.jar {
+    exclude("META-INF/BC1024KE.RSA", "META-INF/BC1024KE.SF", "META-INF/BC1024KE.DSA")
+    exclude("META-INF/BC2048KE.RSA", "META-INF/BC2048KE.SF", "META-INF/BC2048KE.DSA")
+}
+
+compose.desktop {
+    application {
+        mainClass = "org.briarproject.briar.desktop.MainKt"
+        nativeDistributions {
+            targetFormats(TargetFormat.Msi, TargetFormat.Exe, TargetFormat.Deb, TargetFormat.Rpm)
+            packageName = "Briar"
+            description = "Secure messaging, anywhere"
+            vendor = "The Briar Project"
+            copyright = "2021-2022 The Briar Project"
+            licenseFile.set(project.file("LICENSE.txt"))
+            appResourcesRootDir.set(project.layout.projectDirectory.dir("src/appResources"))
+            // As described at https://github.com/JetBrains/compose-jb/tree/master/tutorials/Native_distributions_and_local_execution#configuring-included-jdk-modules
+            // the Gradle plugin does not automatically determine necessary JDK modules to ship
+            // so that we need to define required modules here:
+            modules("java.sql")
+            modules("java.naming")
+            modules("jdk.localedata")
+            linux {
+                packageName = "briar-desktop"
+                // Explicitly specifying the debian revision '-1' doesn't seem to work, it gets always appended.
+                // I think we're fine having revision '-1' as it will only be used to break ties when the upstream
+                // version is the same for two packages.
+                debPackageVersion = "$versionCode-$buildType"
+                // rpm versions may not contain hyphens, so use underscore
+                rpmPackageVersion = "${versionCode}_$buildType"
+                iconFile.set(project.file("src/main/resources/images/logo_circle.png"))
+                debMaintainer = "contact@briarproject.org"
+                appCategory = "comm"
+                menuGroup = "Network;Chat;InstantMessaging;"
+            }
+            windows {
+                iconFile.set(project.file("src/main/resources/images/logo_circle.ico"))
+                upgradeUuid = "cc8b40f7-f190-4cea-bfec-ceb9ef85df09"
+                // Windows doesn't support things like 'nightly' or 'release'. Only numeric versions are acceptable
+                packageVersion = versionCode
+            }
+        }
+    }
+}
diff --git a/src/appResources/linux/org.briarproject.Briar.metainfo.xml b/briar-desktop/src/appResources/linux/org.briarproject.Briar.metainfo.xml
similarity index 100%
rename from src/appResources/linux/org.briarproject.Briar.metainfo.xml
rename to briar-desktop/src/appResources/linux/org.briarproject.Briar.metainfo.xml
diff --git a/src/main/kotlin/androidx/compose/material/DialogButton.kt b/briar-desktop/src/main/kotlin/androidx/compose/material/DialogButton.kt
similarity index 100%
rename from src/main/kotlin/androidx/compose/material/DialogButton.kt
rename to briar-desktop/src/main/kotlin/androidx/compose/material/DialogButton.kt
diff --git a/src/main/kotlin/androidx/compose/material/ExposedDropDownMenu.kt b/briar-desktop/src/main/kotlin/androidx/compose/material/ExposedDropDownMenu.kt
similarity index 100%
rename from src/main/kotlin/androidx/compose/material/ExposedDropDownMenu.kt
rename to briar-desktop/src/main/kotlin/androidx/compose/material/ExposedDropDownMenu.kt
diff --git a/src/main/kotlin/androidx/compose/material/OutlinedTextFieldExt.kt b/briar-desktop/src/main/kotlin/androidx/compose/material/OutlinedTextFieldExt.kt
similarity index 100%
rename from src/main/kotlin/androidx/compose/material/OutlinedTextFieldExt.kt
rename to briar-desktop/src/main/kotlin/androidx/compose/material/OutlinedTextFieldExt.kt
diff --git a/src/main/kotlin/androidx/compose/material/TextFieldExt.kt b/briar-desktop/src/main/kotlin/androidx/compose/material/TextFieldExt.kt
similarity index 100%
rename from src/main/kotlin/androidx/compose/material/TextFieldExt.kt
rename to briar-desktop/src/main/kotlin/androidx/compose/material/TextFieldExt.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/BriarDesktopApp.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/BriarDesktopApp.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/BriarDesktopApp.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/BriarDesktopApp.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/DesktopDatabaseConfig.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/DesktopDatabaseConfig.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/DesktopDatabaseConfig.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/DesktopDatabaseConfig.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/DesktopFeatureFlags.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/DesktopFeatureFlags.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/DesktopFeatureFlags.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/DesktopFeatureFlags.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/DesktopModule.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/Main.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/Main.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/Main.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/Main.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/about/Artifact.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/about/Artifact.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/about/Artifact.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/about/Artifact.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressor.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressor.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressor.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressor.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorImpl.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorImpl.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorImpl.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorImpl.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/BaseContactItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/BaseContactItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/BaseContactItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/BaseContactItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ConfirmRemovePendingContactDialog.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ConfirmRemovePendingContactDialog.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ConfirmRemovePendingContactDialog.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ConfirmRemovePendingContactDialog.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactCard.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactCard.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactCard.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactCard.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactDropDown.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactDropDown.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactDropDown.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactDropDown.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactIdWrapper.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactIdWrapper.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactIdWrapper.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactIdWrapper.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactInfoDrawer.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactInfoDrawer.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactInfoDrawer.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactInfoDrawer.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactList.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactList.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactList.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactList.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactsViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactsViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ContactsViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactsViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/Identicon.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/Identicon.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/Identicon.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/Identicon.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactIdWrapper.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactIdWrapper.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactIdWrapper.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactIdWrapper.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/PendingContactItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/ProfileCircle.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ProfileCircle.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/ProfileCircle.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ProfileCircle.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/RealContactIdWrapper.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/RealContactIdWrapper.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/RealContactIdWrapper.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/RealContactIdWrapper.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/SearchTextField.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/SearchTextField.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/SearchTextField.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/SearchTextField.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactDialog.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactDialog.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactDialog.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactDialog.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/add/remote/AddContactViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/AttachmentItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/AttachmentItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/AttachmentItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/AttachmentItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationDialogs.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationDialogs.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationDialogs.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationDialogs.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationHeader.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationHeader.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationHeader.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationHeader.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationInput.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationInput.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationInput.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationInput.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItemView.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItemView.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItemView.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationItemView.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationList.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationList.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationList.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationList.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItemView.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItemView.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItemView.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessageItemView.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessagesReadEvent.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessagesReadEvent.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessagesReadEvent.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationMessagesReadEvent.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItemView.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItemView.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItemView.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationNoticeItemView.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItemView.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItemView.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItemView.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationRequestItemView.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationVisitor.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationVisitor.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationVisitor.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationVisitor.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/dialogs/DialogType.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/dialogs/DialogType.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/dialogs/DialogType.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/dialogs/DialogType.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationBanner.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationBanner.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationBanner.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationBanner.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/expiration/ExpirationUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/introduction/ContactDrawerMakeIntro.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/introduction/ContactDrawerMakeIntro.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/introduction/ContactDrawerMakeIntro.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/introduction/ContactDrawerMakeIntro.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/introduction/IntroductionViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/introduction/IntroductionViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/introduction/IntroductionViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/introduction/IntroductionViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/ErrorScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/ErrorScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/ErrorScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/ErrorScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/ErrorSubViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/ErrorSubViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/ErrorSubViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/ErrorSubViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/FormScaffold.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/FormScaffold.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/FormScaffold.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/FormScaffold.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/LoadingView.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/LoadingView.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/LoadingView.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/LoadingView.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/LoginScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/LoginScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/LoginScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/LoginScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/LoginSubViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/LoginSubViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/LoginSubViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/LoginSubViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationSubViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationSubViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationSubViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/RegistrationSubViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/StartupScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StartupScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/StartupScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StartupScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/StartupViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StartupViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/StartupViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StartupViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/login/StrengthMeter.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StrengthMeter.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/login/StrengthMeter.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StrengthMeter.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/navigation/BriarSidebar.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/navigation/BriarSidebar.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/navigation/BriarSidebar.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/navigation/BriarSidebar.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/navigation/SidebarViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/navigation/SidebarViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/navigation/SidebarViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/navigation/SidebarViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupCard.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupCard.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupCard.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupCard.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupItem.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupItem.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupItem.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupList.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupList.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupList.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupList.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupListViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupListViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupListViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupListViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordDialog.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordDialog.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordDialog.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordDialog.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordSubViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordSubViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordSubViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/ChangePasswordSubViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingDetails.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingOption.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingOption.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/SettingOption.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingOption.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsOptionList.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsOptionList.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsOptionList.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsOptionList.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/SettingsViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettings.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettingsImpl.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettingsImpl.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettingsImpl.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/settings/UnencryptedSettingsImpl.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/theme/Colors.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/theme/Colors.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/theme/Colors.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/theme/Colors.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/theme/Icons.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/theme/Icons.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/theme/Icons.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/theme/Icons.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/theme/Theme.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/theme/Theme.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/theme/Theme.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/theme/Theme.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutors.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutors.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutors.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutors.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutorsImpl.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutorsImpl.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutorsImpl.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/threading/BriarExecutorsImpl.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/threading/UiExecutor.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/threading/UiExecutor.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/threading/UiExecutor.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/threading/UiExecutor.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/AboutDialog.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/AboutDialog.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/AboutDialog.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/AboutDialog.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarDialog.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarDialog.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/BriarDialog.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarDialog.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarLogo.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarLogo.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/BriarLogo.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarLogo.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/BriarUi.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/ColoredIconButton.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/ColoredIconButton.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/ColoredIconButton.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/ColoredIconButton.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/Constants.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Constants.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/Constants.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Constants.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/HorizontalDivider.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/HorizontalDivider.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/HorizontalDivider.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/HorizontalDivider.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/Loader.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Loader.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/Loader.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/Loader.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/MessageCounter.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/MessageCounter.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/MessageCounter.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/MessageCounter.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/UiMode.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/UiMode.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/UiMode.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/UiMode.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/UiPlaceholder.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/UiPlaceholder.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/UiPlaceholder.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/UiPlaceholder.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/UiState.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/UiState.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/UiState.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/UiState.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/VerticalDivider.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/VerticalDivider.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/VerticalDivider.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/VerticalDivider.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/WindowFocusState.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/WindowFocusState.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/ui/WindowFocusState.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/ui/WindowFocusState.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/FeatureFlagUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/FeatureFlagUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/FeatureFlagUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/FeatureFlagUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/FileUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/FileUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/FileUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/FileUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/ImagePicker.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/ImagePicker.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/ImagePicker.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/ImagePicker.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/ImageUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/ImageUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/ImageUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/ImageUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/InternationalizationUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/InternationalizationUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/InternationalizationUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/InternationalizationUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/KLoggerUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/KLoggerUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/KLoggerUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/KLoggerUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/ListUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/ListUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/ListUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/ListUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/LogUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/LogUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/LogUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/LogUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/PreviewUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/PreviewUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/PreviewUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/PreviewUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/TimeUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/TimeUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/TimeUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/TimeUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/utils/UiUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/UiUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/utils/UiUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/utils/UiUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ComposeUtils.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ComposeUtils.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ComposeUtils.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ComposeUtils.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/DbViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/DbViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/DbViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/DbViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/EventListenerDbViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/EventListenerDbViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/EventListenerDbViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/EventListenerDbViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/SingleStateEvent.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/SingleStateEvent.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/SingleStateEvent.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/SingleStateEvent.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModel.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModel.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModel.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelFactory.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelFactory.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelFactory.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelFactory.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelModule.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelModule.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelModule.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelModule.kt
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelProvider.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelProvider.kt
similarity index 100%
rename from src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelProvider.kt
rename to briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/viewmodel/ViewModelProvider.kt
diff --git a/src/main/resources/fonts/Roboto-Medium.ttf b/briar-desktop/src/main/resources/fonts/Roboto-Medium.ttf
similarity index 100%
rename from src/main/resources/fonts/Roboto-Medium.ttf
rename to briar-desktop/src/main/resources/fonts/Roboto-Medium.ttf
diff --git a/src/main/resources/fonts/Roboto-Regular.ttf b/briar-desktop/src/main/resources/fonts/Roboto-Regular.ttf
similarity index 100%
rename from src/main/resources/fonts/Roboto-Regular.ttf
rename to briar-desktop/src/main/resources/fonts/Roboto-Regular.ttf
diff --git a/src/main/resources/images/logo_circle.ico b/briar-desktop/src/main/resources/images/logo_circle.ico
similarity index 100%
rename from src/main/resources/images/logo_circle.ico
rename to briar-desktop/src/main/resources/images/logo_circle.ico
diff --git a/src/main/resources/images/logo_circle.png b/briar-desktop/src/main/resources/images/logo_circle.png
similarity index 100%
rename from src/main/resources/images/logo_circle.png
rename to briar-desktop/src/main/resources/images/logo_circle.png
diff --git a/src/main/resources/images/logo_circle.svg b/briar-desktop/src/main/resources/images/logo_circle.svg
similarity index 100%
rename from src/main/resources/images/logo_circle.svg
rename to briar-desktop/src/main/resources/images/logo_circle.svg
diff --git a/src/main/resources/images/logo_circle_badge.svg b/briar-desktop/src/main/resources/images/logo_circle_badge.svg
similarity index 100%
rename from src/main/resources/images/logo_circle_badge.svg
rename to briar-desktop/src/main/resources/images/logo_circle_badge.svg
diff --git a/src/main/resources/logback.xml b/briar-desktop/src/main/resources/logback.xml
similarity index 100%
rename from src/main/resources/logback.xml
rename to briar-desktop/src/main/resources/logback.xml
diff --git a/src/main/resources/strings/BriarDesktop.properties b/briar-desktop/src/main/resources/strings/BriarDesktop.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop.properties
diff --git a/src/main/resources/strings/BriarDesktop_ar.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_ar.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_ar.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_ar.properties
diff --git a/src/main/resources/strings/BriarDesktop_bg.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_bg.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_bg.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_bg.properties
diff --git a/src/main/resources/strings/BriarDesktop_ca.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_ca.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_ca.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_ca.properties
diff --git a/src/main/resources/strings/BriarDesktop_de.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_de.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_de.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_de.properties
diff --git a/src/main/resources/strings/BriarDesktop_es.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_es.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_es.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_es.properties
diff --git a/src/main/resources/strings/BriarDesktop_fa.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_fa.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_fa.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_fa.properties
diff --git a/src/main/resources/strings/BriarDesktop_fr.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_fr.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_fr.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_fr.properties
diff --git a/src/main/resources/strings/BriarDesktop_gl.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_gl.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_gl.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_gl.properties
diff --git a/src/main/resources/strings/BriarDesktop_he.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_he.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_he.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_he.properties
diff --git a/src/main/resources/strings/BriarDesktop_hu.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_hu.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_hu.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_hu.properties
diff --git a/src/main/resources/strings/BriarDesktop_is.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_is.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_is.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_is.properties
diff --git a/src/main/resources/strings/BriarDesktop_it.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_it.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_it.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_it.properties
diff --git a/src/main/resources/strings/BriarDesktop_ja.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_ja.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_ja.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_ja.properties
diff --git a/src/main/resources/strings/BriarDesktop_ko.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_ko.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_ko.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_ko.properties
diff --git a/src/main/resources/strings/BriarDesktop_lt.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_lt.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_lt.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_lt.properties
diff --git a/src/main/resources/strings/BriarDesktop_my.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_my.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_my.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_my.properties
diff --git a/src/main/resources/strings/BriarDesktop_nl.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_nl.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_nl.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_nl.properties
diff --git a/src/main/resources/strings/BriarDesktop_pl.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_pl.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_pl.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_pl.properties
diff --git a/src/main/resources/strings/BriarDesktop_pt_BR.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_pt_BR.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_pt_BR.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_pt_BR.properties
diff --git a/src/main/resources/strings/BriarDesktop_ro.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_ro.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_ro.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_ro.properties
diff --git a/src/main/resources/strings/BriarDesktop_ru.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_ru.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_ru.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_ru.properties
diff --git a/src/main/resources/strings/BriarDesktop_sk.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_sk.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_sk.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_sk.properties
diff --git a/src/main/resources/strings/BriarDesktop_sq.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_sq.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_sq.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_sq.properties
diff --git a/src/main/resources/strings/BriarDesktop_sv.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_sv.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_sv.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_sv.properties
diff --git a/src/main/resources/strings/BriarDesktop_tr.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_tr.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_tr.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_tr.properties
diff --git a/src/main/resources/strings/BriarDesktop_uk.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_uk.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_uk.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_uk.properties
diff --git a/src/main/resources/strings/BriarDesktop_zh_CN.properties b/briar-desktop/src/main/resources/strings/BriarDesktop_zh_CN.properties
similarity index 100%
rename from src/main/resources/strings/BriarDesktop_zh_CN.properties
rename to briar-desktop/src/main/resources/strings/BriarDesktop_zh_CN.properties
diff --git a/src/packagingResources/linux/postinst b/briar-desktop/src/packagingResources/linux/postinst
similarity index 100%
rename from src/packagingResources/linux/postinst
rename to briar-desktop/src/packagingResources/linux/postinst
diff --git a/src/packagingResources/linux/preinst b/briar-desktop/src/packagingResources/linux/preinst
similarity index 100%
rename from src/packagingResources/linux/preinst
rename to briar-desktop/src/packagingResources/linux/preinst
diff --git a/src/packagingResources/linux/prerm b/briar-desktop/src/packagingResources/linux/prerm
similarity index 100%
rename from src/packagingResources/linux/prerm
rename to briar-desktop/src/packagingResources/linux/prerm
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/BriarDesktopTestApp.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/DesktopTestModule.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/GroupCountHelper.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/GroupCountHelper.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/GroupCountHelper.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/GroupCountHelper.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/RunWithMultipleTemporaryAccounts.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/RunWithMultipleTemporaryAccounts.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/RunWithMultipleTemporaryAccounts.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/RunWithMultipleTemporaryAccounts.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/RunWithTemporaryAccount.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/RunWithTemporaryAccount.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/RunWithTemporaryAccount.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/RunWithTemporaryAccount.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestDeterministicConversations.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestListDependencies.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestListDependencies.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestListDependencies.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestListDependencies.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestMixedConversations.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestRandomConversations.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithAccount.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithAccount.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithAccount.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithAccount.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithUnwritableDirectory.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithUnwritableDirectory.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithUnwritableDirectory.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithUnwritableDirectory.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithoutAccount.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithoutAccount.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithoutAccount.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestStartupWithoutAccount.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestUtils.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestUtils.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestUtils.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestUtils.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestWithThreeConnectedTemporaryAccounts.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestWithThreeConnectedTemporaryAccounts.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestWithThreeConnectedTemporaryAccounts.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestWithThreeConnectedTemporaryAccounts.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoConnectedTemporaryAccounts.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoConnectedTemporaryAccounts.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoConnectedTemporaryAccounts.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoConnectedTemporaryAccounts.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoTemporaryAccounts.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoTemporaryAccounts.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoTemporaryAccounts.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/TestWithTwoTemporaryAccounts.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorTest.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorTest.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorTest.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/attachment/media/ImageCompressorTest.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/contact/ContactItemTest.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/contact/ContactItemTest.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/contact/ContactItemTest.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/contact/ContactItemTest.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/Conversations.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/Conversations.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/Conversations.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/Conversations.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsData.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsData.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsData.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsData.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsDsl.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsDsl.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsDsl.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/ConversationsDsl.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreator.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreator.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreator.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreator.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreatorImpl.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreatorImpl.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreatorImpl.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/DeterministicTestDataCreatorImpl.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/GroupsData.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/GroupsData.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/GroupsData.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/GroupsData.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/TestAvatarCreatorImpl.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/TestAvatarCreatorImpl.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/TestAvatarCreatorImpl.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/TestAvatarCreatorImpl.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/testdata/TestListConversationData.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/TestListConversationData.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/testdata/TestListConversationData.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/testdata/TestListConversationData.kt
diff --git a/src/test/kotlin/org/briarproject/briar/desktop/utils/ListUtilsTest.kt b/briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/utils/ListUtilsTest.kt
similarity index 100%
rename from src/test/kotlin/org/briarproject/briar/desktop/utils/ListUtilsTest.kt
rename to briar-desktop/src/test/kotlin/org/briarproject/briar/desktop/utils/ListUtilsTest.kt
diff --git a/src/test/resources/images/voronoi1.png b/briar-desktop/src/test/resources/images/voronoi1.png
similarity index 100%
rename from src/test/resources/images/voronoi1.png
rename to briar-desktop/src/test/resources/images/voronoi1.png
diff --git a/src/test/resources/images/voronoi2.png b/briar-desktop/src/test/resources/images/voronoi2.png
similarity index 100%
rename from src/test/resources/images/voronoi2.png
rename to briar-desktop/src/test/resources/images/voronoi2.png
diff --git a/src/test/resources/images/voronoi3.png b/briar-desktop/src/test/resources/images/voronoi3.png
similarity index 100%
rename from src/test/resources/images/voronoi3.png
rename to briar-desktop/src/test/resources/images/voronoi3.png
diff --git a/src/test/resources/images/voronoi4.png b/briar-desktop/src/test/resources/images/voronoi4.png
similarity index 100%
rename from src/test/resources/images/voronoi4.png
rename to briar-desktop/src/test/resources/images/voronoi4.png
diff --git a/build.gradle.kts b/build.gradle.kts
index 97231d398412a4d8cee9dd65e8193882032ab03f..dee9a074d01341397a74a6c765b899ec849929b2 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -16,10 +16,7 @@
  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
-import org.jetbrains.compose.compose
-import org.jetbrains.compose.desktop.application.dsl.TargetFormat
-import org.jetbrains.compose.jetbrainsCompose
-import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
+@file:Suppress("HardCodedStringLiteral")
 
 buildscript {
     repositories {
@@ -48,112 +45,10 @@ buildscript {
     }
 }
 
-plugins {
-    kotlin("jvm") version "1.6.10"
-    kotlin("kapt") version "1.6.10"
-    id("org.jetbrains.compose") version "1.1.1"
-    id("java")
-    id("idea")
-    id("org.jlleitschuh.gradle.ktlint") version "10.1.0"
-    id("org.briarproject.briar.desktop.build-data-gradle-plugin")
-}
-
-val versionCode = "0.2.1"
-val buildType = if (project.hasProperty("buildType")) project.properties["buildType"] else "snapshot"
-group = "app.briar.desktop"
-version = "$versionCode-$buildType"
-
 allprojects {
     repositories {
         mavenCentral()
-        jetbrainsCompose()
         google()
         jcenter()
     }
 }
-
-buildData {
-    packageName = "org.briarproject.briar.desktop"
-}
-
-dependencies {
-    implementation(compose.desktop.currentOs)
-    implementation(compose.materialIconsExtended)
-    // needed to access Dispatchers.Swing for EventExecutor
-    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-swing:1.6.1")
-
-    implementation("com.github.ajalt.clikt:clikt:3.4.0")
-    implementation("com.ibm.icu:icu4j:70.1")
-
-    implementation(project(path = ":briar-core", configuration = "default"))
-    implementation(project(path = ":bramble-java", configuration = "default"))
-
-    implementation("io.github.microutils:kotlin-logging-jvm:2.1.21")
-    implementation("org.slf4j:jul-to-slf4j:1.7.36")
-    implementation("ch.qos.logback:logback-classic:1.2.11")
-
-    val daggerVersion = "2.24"
-    kapt("com.google.dagger:dagger-compiler:$daggerVersion")
-
-    testImplementation(kotlin("test-testng"))
-    testImplementation("commons-io:commons-io:2.11.0")
-    kaptTest("com.google.dagger:dagger-compiler:$daggerVersion")
-}
-
-tasks.test {
-    useTestNG()
-}
-
-tasks.withType<KotlinCompile> {
-    kotlinOptions.jvmTarget = "11"
-}
-
-tasks.withType<org.gradle.jvm.tasks.Jar> {
-    exclude("META-INF/BC1024KE.RSA", "META-INF/BC1024KE.SF", "META-INF/BC1024KE.DSA")
-    exclude("META-INF/BC2048KE.RSA", "META-INF/BC2048KE.SF", "META-INF/BC2048KE.DSA")
-}
-
-tasks.jar {
-    exclude("META-INF/BC1024KE.RSA", "META-INF/BC1024KE.SF", "META-INF/BC1024KE.DSA")
-    exclude("META-INF/BC2048KE.RSA", "META-INF/BC2048KE.SF", "META-INF/BC2048KE.DSA")
-}
-
-compose.desktop {
-    application {
-        mainClass = "org.briarproject.briar.desktop.MainKt"
-        nativeDistributions {
-            targetFormats(TargetFormat.Msi, TargetFormat.Exe, TargetFormat.Deb, TargetFormat.Rpm)
-            packageName = "Briar"
-            description = "Secure messaging, anywhere"
-            vendor = "The Briar Project"
-            copyright = "2021-2022 The Briar Project"
-            licenseFile.set(project.file("LICENSE.txt"))
-            appResourcesRootDir.set(project.layout.projectDirectory.dir("src/appResources"))
-            // As described at https://github.com/JetBrains/compose-jb/tree/master/tutorials/Native_distributions_and_local_execution#configuring-included-jdk-modules
-            // the Gradle plugin does not automatically determine necessary JDK modules to ship
-            // so that we need to define required modules here:
-            modules("java.sql")
-            modules("java.naming")
-            modules("jdk.localedata")
-            linux {
-                packageName = "briar-desktop"
-                // Explicitly specifying the debian revision '-1' doesn't seem to work, it gets always appended.
-                // I think we're fine having revision '-1' as it will only be used to break ties when the upstream
-                // version is the same for two packages.
-                debPackageVersion = "$versionCode-$buildType"
-                // rpm versions may not contain hyphens, so use underscore
-                rpmPackageVersion = "${versionCode}_$buildType"
-                iconFile.set(project.file("src/main/resources/images/logo_circle.png"))
-                debMaintainer = "contact@briarproject.org"
-                appCategory = "comm"
-                menuGroup = "Network;Chat;InstantMessaging;"
-            }
-            windows {
-                iconFile.set(project.file("src/main/resources/images/logo_circle.ico"))
-                upgradeUuid = "cc8b40f7-f190-4cea-bfec-ceb9ef85df09"
-                // Windows doesn't support things like 'nightly' or 'release'. Only numeric versions are acceptable
-                packageVersion = versionCode
-            }
-        }
-    }
-}
diff --git a/buildSrc/src/main/kotlin/org/briarproject/briar/desktop/builddata/GenerateBuildDataSourceTask.kt b/buildSrc/src/main/kotlin/org/briarproject/briar/desktop/builddata/GenerateBuildDataSourceTask.kt
index fc7b1716eaa2533aa38ca4382559dcbaa9004d45..725bed04d51b9b1d103c57111416e7ecc419c6ae 100644
--- a/buildSrc/src/main/kotlin/org/briarproject/briar/desktop/builddata/GenerateBuildDataSourceTask.kt
+++ b/buildSrc/src/main/kotlin/org/briarproject/briar/desktop/builddata/GenerateBuildDataSourceTask.kt
@@ -41,7 +41,7 @@ import java.nio.file.StandardCopyOption
 open class GenerateBuildDataSourceTask : AbstractBuildDataTask() {
 
     companion object {
-        val LICENSES = buildMap {
+        val LICENSES = buildMap<UnversionedArtifact, String> {
             put(UnversionedArtifact("ch.qos.logback", "logback-classic"), "EPL 1.0/LGPL 2.1")
             put(UnversionedArtifact("ch.qos.logback", "logback-core"), "EPL 1.0/LGPL 2.1")
             put(UnversionedArtifact("com.fasterxml.jackson.core", "jackson-annotations"), "Apache 2.0")
@@ -118,7 +118,7 @@ open class GenerateBuildDataSourceTask : AbstractBuildDataTask() {
 
         // Get Git hashes, last commit time, current branch and briar-core tag using JGit.
         // First, open main git repository
-        val dir = project.projectDir
+        val dir = project.rootProject.projectDir
         val git = Git.open(dir)
         val repository = git.repository
         val status = git.status().call()
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 28c2bd65a5e38483b0bd550b08ff5bc3361e8a74..db8e2ad937f8c9ee55d25115325ab800b4a87e97 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -11,6 +11,7 @@ include(":bramble-core")
 include(":bramble-java")
 include(":briar-api")
 include(":briar-core")
+include(":briar-desktop")
 project(":bramble-api").projectDir = file("briar/bramble-api")
 project(":bramble-core").projectDir = file("briar/bramble-core")
 project(":bramble-java").projectDir = file("briar/bramble-java")