coinbase
coinbase-wallet-sdk
TypeScript

An open protocol that lets users connect their mobile wallets to your DApp

Last updated Jul 8, 2026
1.8k
Stars
753
Forks
85
Issues
+3
Stars/day
Attention Score
99
Language breakdown
TypeScript 95.5%
JavaScript 3.3%
SCSS 1.2%
Files click to expand
README

Coinbase Wallet SDK

npm

Coinbase Wallet SDK allows dapps to connect to Coinbase Wallet

- Docs - Desktop: Users can connect to your dapp by scanning a QR code - Mobile: Users can connect to your mobile dapp through a deeplink to the dapp browser - Desktop: Users can connect by clicking the connect with an extension option.

Installing Wallet SDK

  • Check available versions:
# yarn
     yarn info @coinbase/wallet-sdk versions

# npm npm view @coinbase/wallet-sdk versions

  • Install latest version:
# yarn
   yarn add @coinbase/wallet-sdk

# npm npm install @coinbase/wallet-sdk

  • Check installed version:
# yarn
   yarn list @coinbase/wallet-sdk

# npm npm list @coinbase/wallet-sdk

Upgrading Wallet SDK

Migrating from v3 to v4? Please see our v4 migration guide for a full list of breaking changes.
  • Compare the installed version with the latest:
# yarn
   yarn outdated @coinbase/wallet-sdk

# npm npm outdated @coinbase/wallet-sdk

  • Update to latest:
# yarn
   yarn upgrade @coinbase/wallet-sdk --latest

# npm npm update @coinbase/wallet-sdk

Basic Usage

  • Initialize SDK
const sdk = new CoinbaseWalletSDK({
     appName: 'SDK Playground',
   });
  • Make web3 Provider
const provider = sdk.makeWeb3Provider();
  • Request accounts to initialize a connection to wallet
const addresses = provider.request({
     method: 'eth_requestAccounts',
   });
  • Make more requests
provider.request('personal_sign', [
     0x${Buffer.from('test message', 'utf8').toString('hex')},
     addresses[0],
   ]);
  • Handle provider events
provider.on('connect', (info) => {
     setConnect(info);
   });

provider.on('disconnect', (error) => { setDisconnect({ code: error.code, message: error.message }); });

provider.on('accountsChanged', (accounts) => { setAccountsChanged(accounts); });

provider.on('chainChanged', (chainId) => { setChainChanged(chainId); });

provider.on('message', (message) => { setMessage(message); });

Developing locally and running the test dapp

  • The Coinbase Wallet SDK test dapp can be viewed here https://coinbase.github.io/coinbase-wallet-sdk/.
  • To run it locally follow these steps:
1. Fork this repo and clone it 1. From the root dir run yarn install 1. From the root dir run yarn dev

© 2026 GitRepoTrend · coinbase/coinbase-wallet-sdk · Updated daily from GitHub