Skip to main content

Checking if a wallet is a Solana wallet

React Native
    import { isSolanaWallet } from '@dynamic-labs/solana';
    import { dynamicClient } from '<path to client file>';

    const wallet = dynamicClient.wallets.primary;
    if (!wallet || !isSolanaWallet(wallet)) {
      throw new Error('This wallet is not a Solana wallet');
    }

    const connection = dynamicClient.solana.getConnection();

Get Connection

import { createClient } from '@dynamic-labs/client'
import { SolanaExtension } from '@dynamic-labs/solana-extension'

export const dynamicClient = createClient({
  environmentId: 'YOUR-ENVIRONMENT-ID',
}).extend(SolanaExtension())

Get Signer

import { createClient } from '@dynamic-labs/client'
import { SolanaExtension } from '@dynamic-labs/solana-extension'

export const dynamicClient = createClient({
  environmentId: 'YOUR-ENVIRONMENT-ID',
}).extend(SolanaExtension())

Custom connection options

To override the default Web3.js Connection settings (e.g. commitment, RPC URLs), pass options to the client’s Solana extension: dynamicClient.solana.getConnection({ commitment: 'confirmed', ... }) (see Get Connection above).

Examples

You can find examples of how to interact with Solana wallets in the examples section: