Documentation Index
Fetch the complete documentation index at: https://reown-5552f0bb-devin-1759771246-appkit-1-8-9-docs.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
WalletConnect Sign is a remote signer protocol to communicate securely between web3 wallets and dapps. The protocol establishes a remote pairing between two apps and/or devices using a Relay server to relay payloads. These payloads are symmetrically encrypted through a shared key between the two peers. The pairing is initiated by one peer displaying a QR Code or deep link with a standard WalletConnect URI and is established when the counter-party approves this pairing request.
Don’t have a project ID?Head over to Reown Dashboard and create a new project now!
Installation
Web
iOS
Android
Flutter
.NET
Unity
bash npm npm install @walletconnect/sign-client bash Yarn yarn add @walletconnect/sign-client bash Bun bun add @walletconnect/sign-client bash pnpm pnpm add @walletconnect/sign-client
For Node.js, the WalletConnect SignClient additionally requires lokijs to manage storage internally.
bash npm npm install --save @walletconnect/sign-client lokijs@1.x
bash Yarn yarn add @walletconnect/sign-client lokijs@1.x bash Bun bun add --save @walletconnect/sign-client lokijs@1.x bash pnpm pnpm add @walletconnect/sign-client lokijs@1.x
SwiftPackageManager
Cocoapods
You can add a WalletConnect SDK to your project with Swift Package Manager. In order to do that:
- Open XCode
- Go to File -> Add Packages
- Paste the repo GitHub URL: https://github.com/reown-com/reown-swift
- Tap Add Package
- Select WalletConnect check mark
- Update Cocoapods spec repos. Type in terminal
pod repo update
- Initialize Podfile if needed with
pod init
- Add pod to your Podfile:
pod 'WalletConnectSwiftV2'
- Install pods with
pod install
If you encounter any problems during package installation, you can specify the exact path to the repositorypod 'WalletConnectSwiftV2', :git => 'https://github.com/reown-com/reown-swift.git', :tag => '1.0.5'
Kotlin implementation of WalletConnect v2 Sign protocol for Android applications. This SDK is developed in Kotlin and usable in both Java and Kotlin files.
- Android Core

- Sign

Requirements
- Android min SDK 23
- Java 11
Installation
root/build.gradle.kts:allprojects {
repositories {
mavenCentral()
maven { url "https://jitpack.io" }
}
}
app/build.gradle.ktsimplementation("com.walletconnect:android-core:release_version")
implementation("com.walletconnect:sign:release_version")
Install the WalletConnect client package.flutter pub add walletconnect_flutter_v2
Depending on your platform, you will have to add different permissions to get the package to work.MacOS
Add the following to your DebugProfile.entitlements and Release.entitlements files so that it can connect to the WebSocket server.<key>com.apple.security.network.client</key>
<true/>
Install via Packages
Install the WalletConnect Sign Client package via Nuget.dotnet add package WalletConnect.Sign
WalletConnectUnity.Core is a Unity package that provides a client implementation of the WalletConnect v2 protocol. It is built on top of the WalletConnectSharp.Sign library, which provides the core functionality for the WalletConnect protocol.Prerequisites
- Unity 2021.3 or above
- IL2CPP code stripping level: Minimal (or lower)
Package Installation
To install packages via OpenUPM, you need to have Node.js and openupm-cli installed. Once you have them installed, you can run the following commands:openupm add com.walletconnect.core
- Open
Advanced Project Settings from the gear ⚙ menu located at the top right of the Package Manager’s toolbar
- Add a new scoped registry with the following details:
- Name:
OpenUPM
- URL:
https://package.openupm.com
- Scope(s):
com.walletconnect
- Press plus ➕ and then
Save buttons
- In the Package Manager windows open the add ➕ menu from the toolbar
- Select
Add package by name...
- Enter the package name:
- Press
Add button
- Open the add ➕ menu in the Package Manager’s toolbar
- Select
Add package from git URL...
- Enter the package URL:
WalletConnectUnity Corehttps://github.com/WalletConnect/WalletConnectUnity.git?path=Packages/com.walletconnect.core
- Press
Add button
It’s possible to lock the version of the package by adding #{version} at the end of the git URL, where #{version} is the git tag of the version you want to use.
For example, to install version 1.0.1 of WalletConnectUnity Modal, use the following URL:https://github.com/WalletConnect/WalletConnectUnity.git?path=Packages/com.walletconnect.core#core/1.0.1
WebGL
Due to WebGL’s single-threaded nature, certain asynchronous operations like Task.Run, Task.ContinueWith, Task.Delay, and ConfigureAwait(false) are not natively supported.To enable these operations in WebGL builds, an additional third-party package, WebGLThreadingPatcher, is required. This package modifies the Unity WebGL build to delegate work to the SynchronizationContext, allowing these operations to be executed on the same thread without blocking the main application. Please note that all tasks are still executed on a single thread, and any blocking calls will freeze the entire application.The WebGLThreadingPatcher package can be added via git URL:https://github.com/VolodymyrBS/WebGLThreadingPatcher.git