Skip to content

lazor-kit/wallet-mobile-adapter

Repository files navigation

LazorKit React Native SDK

LazorKit allows you to build Passkey-native mobile applications.

It replaces complex seed phrases with the standard biometrics users already know: FaceID or TouchID.

Features

  • Seedless: Onboard users instantly with Passkeys
  • Gasless: Sponsored transactions via Paymaster
  • Native: Built for React Native & Expo
  • Secure: Hardware-bound credentials

Installation

npm install @lazorkit/wallet-mobile-adapter

Usage

import { LazorKitProvider, useWallet } from '@lazorkit/wallet-mobile-adapter';
import { View, Button, Text } from 'react-native';

// 1. Wrap App
export default function App() {
  return (
    <LazorKitProvider
      rpcUrl="https://api.devnet.solana.com"
      portalUrl="https://portal.lazor.sh"
      configPaymaster={{ paymasterUrl: "https://lazorkit-paymaster.onrender.com" }}
    >
      <WalletScreen />
    </LazorKitProvider>
  );
}

// 2. Use Hook
function WalletScreen() {
  const { connect, signMessage, isConnected } = useWallet();

  const handleSign = async () => {
    if (!isConnected) {
      await connect({ redirectUrl: 'myapp://home' });
      return;
    }

    const sig = await signMessage("Hello", { 
      redirectUrl: 'myapp://callback' 
    });
    console.log("Signed:", sig);
  };

  return <Button title="Action" onPress={handleSign} />;
}

API Reference

useWallet()

connect(options)

Connects to the wallet.

Parameters

Param Type Description
options.redirectUrl string Deep link URL

disconnect()

Disconnects the wallet.

signMessage(message, options)

Signs a message string.

Parameters

Param Type Description
message string Content to sign
options.redirectUrl string Deep link URL

Returns Promise<string> - Signature

signAndSendTransaction(payload, options)

Signs and sends transaction.

Parameters

Param Type Description
payload.instructions TransactionInstruction[] Instructions
payload.transactionOptions object Config options
transactionOptions.feeToken string Token address for gas fees (e.g. USDC).
transactionOptions.computeUnitLimit number Max compute units.
transactionOptions.addressLookupTableAccounts AddressLookupTableAccount[] Lookup tables for v0 txs.
transactionOptions.clusterSimulation 'devnet' | 'mainnet' Network for simulation.

| options.redirectUrl | string | Deep link URL |

Returns Promise<string> - Signature

About

No description, website, or topics provided.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published