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.
For Node.js, the WalletConnect SignClient additionally requires lokijs
to manage storage internally.
For Node.js, the WalletConnect SignClient additionally requires lokijs
to manage storage internally.
You can add a WalletConnect SDK to your project with Swift Package Manager. In order to do that:
You can add a WalletConnect SDK to your project with Swift Package Manager. In order to do that:
pod repo update
pod init
pod install
If you encounter any problems during package installation, you can specify the exact path to the repository
Kotlin implementation of WalletConnect v2 Sign protocol for Android applications. This SDK is developed in Kotlin and usable in both Java and Kotlin files.
root/build.gradle.kts:
app/build.gradle.kts
Install the WalletConnect client package.
Depending on your platform, you will have to add different permissions to get the package to work.
Add the following to your DebugProfile.entitlements
and Release.entitlements
files so that it can connect to the WebSocket server.
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.
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:
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:
Advanced Project Settings
from the gear ⚙ menu located at the top right of the Package Manager’s toolbarOpenUPM
https://package.openupm.com
com.walletconnect
Save
buttonsAdd package by name...
com.walletconnect.core
Add
buttonAdd package from git URL...
WalletConnectUnity Core
Add
buttonIt’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:
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:
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.
For Node.js, the WalletConnect SignClient additionally requires lokijs
to manage storage internally.
For Node.js, the WalletConnect SignClient additionally requires lokijs
to manage storage internally.
You can add a WalletConnect SDK to your project with Swift Package Manager. In order to do that:
You can add a WalletConnect SDK to your project with Swift Package Manager. In order to do that:
pod repo update
pod init
pod install
If you encounter any problems during package installation, you can specify the exact path to the repository
Kotlin implementation of WalletConnect v2 Sign protocol for Android applications. This SDK is developed in Kotlin and usable in both Java and Kotlin files.
root/build.gradle.kts:
app/build.gradle.kts
Install the WalletConnect client package.
Depending on your platform, you will have to add different permissions to get the package to work.
Add the following to your DebugProfile.entitlements
and Release.entitlements
files so that it can connect to the WebSocket server.
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.
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:
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:
Advanced Project Settings
from the gear ⚙ menu located at the top right of the Package Manager’s toolbarOpenUPM
https://package.openupm.com
com.walletconnect
Save
buttonsAdd package by name...
com.walletconnect.core
Add
buttonAdd package from git URL...
WalletConnectUnity Core
Add
buttonIt’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:
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: