๐Ÿงช

LazorKit

Devnet
โ† Back to Wallet Adapters
Anza

Anza Wallet Adapter

The official Solana wallet adapter with built-in modal UI

Installation

npm install @solana/wallet-adapter-react \
  @solana/wallet-adapter-react-ui \
  @lazorkit/wallet

Provider Setup

import { useEffect, useMemo } from 'react';
import {
  ConnectionProvider,
  WalletProvider
} from '@solana/wallet-adapter-react';
import {
  WalletModalProvider
} from '@solana/wallet-adapter-react-ui';
import { registerLazorkitWallet } from '@lazorkit/wallet';

// Import the modal styles
import '@solana/wallet-adapter-react-ui/styles.css';

function AppProvider({ children }) {
  // Register LazorKit on mount
  useEffect(() => {
    registerLazorkitWallet({
      rpcUrl: 'https://api.devnet.solana.com',
      portalUrl: 'https://portal.lazor.sh',
      paymasterConfig: {
        paymasterUrl: 'https://kora.devnet.lazorkit.com',
      },
      clusterSimulation: 'devnet',
    });
  }, []);

  // Empty array - wallet-standard handles discovery
  const wallets = useMemo(() => [], []);

  return (
    <ConnectionProvider endpoint={endpoint}>
      <WalletProvider wallets={wallets}>
        <WalletModalProvider>
          {children}
        </WalletModalProvider>
      </WalletProvider>
    </ConnectionProvider>
  );
}

Using the Hooks

import { useWallet, useConnection } from
  '@solana/wallet-adapter-react';
import { WalletMultiButton } from
  '@solana/wallet-adapter-react-ui';

function MyComponent() {
  const { publicKey, connected, sendTransaction } = useWallet();
  const { connection } = useConnection();

  const handleSend = async () => {
    // Build your transaction
    const tx = new Transaction().add(...instructions);

    // Send via the adapter (works with any wallet!)
    const signature = await sendTransaction(tx, connection);
    console.log('Sent:', signature);
  };

  return (
    <div>
      {/* This button opens a modal with all wallets */}
      <WalletMultiButton />

      {connected && (
        <button onClick={handleSend}>Send TX</button>
      )}
    </div>
  );
}

Key Points

  • โœ“Automatic Discovery: LazorKit appears in the modal after registration
  • โœ“Empty Wallets Array: No need to import wallet adapters manually
  • โœ“Same API: useWallet() works identically for all wallets
  • โœ“Gasless for LazorKit: Paymaster auto-handles gas when using LazorKit

Try Gasless Transfer

๐Ÿ’ธ

Connect Your Wallet

Click the button below to open the wallet modal. LazorKit will appear alongside other installed wallets.