diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/XXMessengerClient.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/XXMessengerClient.xcscheme
new file mode 100644
index 0000000000000000000000000000000000000000..665c4644aed93c75db826b6b8969769c2c203fe3
--- /dev/null
+++ b/.swiftpm/xcode/xcshareddata/xcschemes/XXMessengerClient.xcscheme
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1340"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "XXMessengerClient"
+               BuildableName = "XXMessengerClient"
+               BlueprintName = "XXMessengerClient"
+               ReferencedContainer = "container:">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      codeCoverageEnabled = "YES">
+      <Testables>
+         <TestableReference
+            skipped = "NO">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "XXMessengerClientTests"
+               BuildableName = "XXMessengerClientTests"
+               BlueprintName = "XXMessengerClientTests"
+               ReferencedContainer = "container:">
+            </BuildableReference>
+         </TestableReference>
+      </Testables>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "XXMessengerClient"
+            BuildableName = "XXMessengerClient"
+            BlueprintName = "XXMessengerClient"
+            ReferencedContainer = "container:">
+         </BuildableReference>
+      </MacroExpansion>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/elixxir-dapps-sdk-swift.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/elixxir-dapps-sdk-swift.xcscheme
index c0fcfabe31600c05dbbb6e33fcd972945a0d23d8..223297f5afd6ce419d4485fb8500ed96aeacbe18 100644
--- a/.swiftpm/xcode/xcshareddata/xcschemes/elixxir-dapps-sdk-swift.xcscheme
+++ b/.swiftpm/xcode/xcshareddata/xcschemes/elixxir-dapps-sdk-swift.xcscheme
@@ -20,6 +20,20 @@
                ReferencedContainer = "container:">
             </BuildableReference>
          </BuildActionEntry>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "XXMessengerClient"
+               BuildableName = "XXMessengerClient"
+               BlueprintName = "XXMessengerClient"
+               ReferencedContainer = "container:">
+            </BuildableReference>
+         </BuildActionEntry>
       </BuildActionEntries>
    </BuildAction>
    <TestAction
@@ -39,6 +53,16 @@
                ReferencedContainer = "container:">
             </BuildableReference>
          </TestableReference>
+         <TestableReference
+            skipped = "NO">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "XXMessengerClientTests"
+               BuildableName = "XXMessengerClientTests"
+               BlueprintName = "XXMessengerClientTests"
+               ReferencedContainer = "container:">
+            </BuildableReference>
+         </TestableReference>
       </Testables>
    </TestAction>
    <LaunchAction
diff --git a/Package.swift b/Package.swift
index dc48fcd529e629c9e08e8ca0e05e8a6e0a831355..4f06554efce0916bf663521502ed565b0a93c8e4 100644
--- a/Package.swift
+++ b/Package.swift
@@ -20,6 +20,7 @@ let package = Package(
   ],
   products: [
     .library(name: "XXClient", targets: ["XXClient"]),
+    .library(name: "XXMessengerClient", targets: ["XXMessengerClient"]),
   ],
   dependencies: [
     .package(
@@ -48,6 +49,22 @@ let package = Package(
       ],
       swiftSettings: swiftSettings
     ),
+    .target(
+      name: "XXMessengerClient",
+      dependencies: [
+        .target(name: "XXClient"),
+        .product(name: "XCTestDynamicOverlay", package: "xctest-dynamic-overlay"),
+      ],
+      swiftSettings: swiftSettings
+    ),
+    .testTarget(
+      name: "XXMessengerClientTests",
+      dependencies: [
+        .target(name: "XXMessengerClient"),
+        .product(name: "CustomDump", package: "swift-custom-dump"),
+      ],
+      swiftSettings: swiftSettings
+    ),
     .binaryTarget(
       name: "Bindings",
       path: "Frameworks/Bindings.xcframework"
diff --git a/README.md b/README.md
index 5c0f3d59e1b01968e89e695ea0ce43bf99248313..738012cd9d6a18cbb867b9bf101caa0a82622519 100644
--- a/README.md
+++ b/README.md
@@ -139,7 +139,8 @@ Open `ElixxirDAppsSDK.xcworkspace` in Xcode (≥13.4).
 ```
 ElixxirDAppsSDK [Xcode Workspace]
  ├─ elixxir-dapps-sdk-swift [Swift Package]
- |   └─ XXClient [Library]
+ |   ├─ XXClient [Library]
+ |   └─ XXMessengerClient [Library]
  └─ Example [Xcode Project]
      ├─ ExampleApp (iOS) [iOS App Target]
      ├─ example-app [Swift Package]
@@ -157,7 +158,7 @@ ElixxirDAppsSDK [Xcode Workspace]
 - Use `example-app` scheme to build and test the example app package with all contained libraries.
 - Use `ExampleAppIcon` scheme with macOS target to build and preview the example app icon.
 - Use `example-app-icon-export` scheme with macOS target to build and update the example app icon.
-- Use other schemes, like `AppFeature`, for building and testing individual libraries in isolation.
+- Use other schemes, like `XXClient`, for building and testing individual libraries in isolation.
 
 ## 📄 License
 
diff --git a/Sources/XXMessengerClient/Unimplemented.swift b/Sources/XXMessengerClient/Unimplemented.swift
new file mode 100644
index 0000000000000000000000000000000000000000..9454b9d77e43e6208b27e1a82464ffaee4378ba6
--- /dev/null
+++ b/Sources/XXMessengerClient/Unimplemented.swift
@@ -0,0 +1 @@
+private enum Unimplemented {}
diff --git a/Tests/XXMessengerClientTests/XXMessengerClientTests.swift b/Tests/XXMessengerClientTests/XXMessengerClientTests.swift
new file mode 100644
index 0000000000000000000000000000000000000000..11caac7a87166ce97667d9cefba7df1942839dd7
--- /dev/null
+++ b/Tests/XXMessengerClientTests/XXMessengerClientTests.swift
@@ -0,0 +1,8 @@
+import XCTest
+@testable import XXMessengerClient
+
+final class XXMessengerClientTests: XCTestCase {
+  func testExample() {
+    XCTAssert(true)
+  }
+}