Now Open Source

One SDK for every Canton wallet.

CIP-0103 compliant wallet integration for Canton — registry-backed, verified wallets, and a clean developer experience.

View Documentation
yourapp.canton

Connect Wallet

Select a wallet to connect to this dapp.

Architecture

How PartyLayer Works

From your first line of code to a connected wallet — the entire flow, abstracted.

Quick Integration
import { PartyLayerKit } from '@partylayer/react'

// Wrap your app — done.
<PartyLayerKit network="mainnet">
  <App />
</PartyLayerKit>
Available Hooks
useConnect()
useSession()
useDisconnect()
useWallets()
useSign()
useProvider()
Core Capabilities
connect / disconnect
Session lifecycle management
signMessage
Arbitrary message signing
prepareExecute
Transaction preparation & execution
CIP-0103 Bridge
Native provider passthrough
Transport Types
InjectedQR CodeDeep LinkOAuth2CIP-0103 Native
Supported Wallets
Click any node to explore

Open Source

MIT licensed. View, fork, and contribute on GitHub.

Registry-Backed

Cryptographically verified wallet registry prevents spoofing.

Multi-Wallet

Console, Send, Loop, Cantor8, Nightly, Bron — one integration for all.

CIP-0103 Standard

Full CIP-0103 compliance with 10 methods, 4 events, and typed error model.

TypeScript-First

Branded types, strict mode, and full IntelliSense for every API surface.

Theme System

Light, dark, and auto themes with fully customizable design tokens.

Supported wallets

All verified wallets in the Canton ecosystem, unified behind a single interface.

Wallet providers can apply for registry inclusion. Learn more →

Developer quickstart

Add wallet connectivity to your Canton dapp in minutes.

1npm install @partylayer/sdk @partylayer/react
2
3# or with yarn
4yarn add @partylayer/sdk @partylayer/react
5
6# or with pnpm
7pnpm add @partylayer/sdk @partylayer/react

Interactive demo

Try the wallet connection flow right here — click Connect Wallet to see the modal in action.

Your dApp

Click the button to open the wallet connection modal.

Select a wallet, see the connecting animation, and get a success confirmation

Frequently asked questions

Everything you need to know about PartyLayer.

Yes! PartyLayer is fully open source under the MIT license. You can view the source code, submit issues, and contribute on GitHub. We believe in transparency and community-driven development.

The wallet registry is a cryptographically signed JSON manifest containing metadata for each verified wallet. The SDK fetches this registry and validates signatures before displaying wallets to users. This prevents phishing attacks where malicious apps impersonate legitimate wallets.

PartyLayer supports all Canton networks including mainnet, testnet, and devnet environments. The SDK automatically detects the connected network and adapts accordingly. Each wallet adapter handles network-specific connection logic.

Common error codes include WALLET_NOT_INSTALLED (wallet app not detected), USER_REJECTED (user declined connection), SESSION_EXPIRED (session timed out), and TRANSPORT_ERROR (communication failure). All errors are typed and documented in the SDK.

We run comprehensive security testing including registry signature verification, session hijacking prevention, and transport layer security. The SDK includes built-in protections against common attack vectors. See our security checklist in the docs.

Wallet providers can apply for registry inclusion by submitting a pull request to the PartyLayer repository. Requirements include implementing the standard adapter interface, passing conformance tests, and providing wallet metadata. See the wallet-provider-guide in our docs.

Still have questions? Start a discussion on GitHub