PartyLayer
Try Demo

The Canton wallet connection kit

PartyLayer is an open-source TypeScript SDK and React UI for connecting Canton dApps to supported wallets. Install the kit once, mount it at your application boundary and render the default Connect Wallet button.

bash
npm install @partylayer/react @tanstack/react-query
tsx
import { PartyLayerKit, ConnectButton } from '@partylayer/react';

export default function App() {
  return (
    <PartyLayerKit network="devnet" appName="My dApp">
      <ConnectButton />
    </PartyLayerKit>
  );
}

Follow the quick start for complete Vite and Next.js setup, or generate a new app. The installation guide records the target release versions and release verification. Use its framework support table to choose the UI and runtime for your application.

What comes with the kit

Wallets included
Reviewed wallet runtimes load as needed. No per-wallet package installation or registration for the default catalog.
Branded connection UI
Wallet picker, search, connection states, account menu and Powered by PartyLayer attribution by default.
CIP-0103 integration
Official discovery owns browser-native connections. Accounts, events and provider requests follow the connected wallet.
Application controls
Choose network, channel, themes and wallet order. Extend the catalog or build a custom UI when needed.
Account and operation UI
Reactive party/network state, optional backend sign-in, transaction activity and authorized holdings integration.
Language and theming
14 UI languages, searchable language selection, automatic Arabic RTL, light/dark/auto themes, keyboard navigation and typed React APIs.

Wallet availability

The selected network, registry channel and effective capabilities determine the wallet list. Vala is Devnet beta; Send is Mainnet-only in the catalog. WalletConnect needs your project ID and Bron needs your OAuth/API configuration. Users still log in to or install their wallet.

See the wallet directory for integrations and the capability matrix before offering a particular operation. A catalog listing is not proof of completed live wallet or ledger acceptance.

What your application supplies

  • Authentication: a backend challenge and independent signature/key verification for application login.
  • Data: authorized, party/network-bound ledger reads for holdings and application state.
  • Transactions: valid Canton/protocol commands and independent verification of final settlement.

Connecting a wallet or signing a message does not establish a successful transfer or swap. Start with authentication, transaction lifecycle and wallet balances when building those features.

Choose your integration

  • @partylayer/react: ready-made kit, ConnectButton and React hooks. Includes the SDK and supported wallet runtimes.
  • @partylayer/sdk: framework-independent client for custom application stacks.
  • @partylayer/vue: Vue composables and Nuxt patterns; custom connection UI.
  • @partylayer/provider: advanced provider infrastructure; not a prerequisite for using the kit.

Coming from Ethereum? The Canton comparison guide explains familiar concepts and where Canton party, ledger and authentication models differ.

Build with an AI coding assistant

Give your assistant the plain-text integration reference for complete React setup, SDK usage and wallet network requirements, or start with the documentation index. These references follow the maintained guides; check your installed version and the selected wallet's capabilities when applying an example.

NextInstallation