← Back to templates
Expo Kit Wallet example

Expo Kit Wallet example

Mobile

A Solana mobile app template with Expo, React Native, Solana Kit, Mobile Wallet Adapter actions, and Uniwind.

expomobile-wallet-adapterreact-nativesolana-kittailwinduniwindwalletwallet-ui

Get started

npx solana-mobile create --template gh:solana-mobile/templates/mobile/expo-kit-wallet

expo-kit-wallet

This is an Expo development-client app template for Solana Mobile wallets. It uses @solana/kit and @wallet-ui/react-native-kit to connect to a mobile wallet, read account state, and run example wallet actions.

Technologies

Included wallet flows

  • Connect and disconnect a mobile wallet.
  • Read the connected account balance and recent activity for the selected cluster.
  • Show the connected wallet's primary .skr domain and a "Seeker verified" badge when it holds a Seeker Genesis Token.
  • Sign a message with the connected account.
  • Sign a memo transaction.
  • Sign a Solana Sign-In payload.
  • Sign and submit a memo transaction after checking the connected account can pay the transaction fee.

Get started

  1. Install dependencies.

    npm install
    
  2. Build and run the Android development client.

    npm run android
    

This template depends on native modules and expo-dev-client, so use a development build instead of Expo Go.

You can start developing by editing the files inside the src directory. Expo Router routes live in src/app, and feature code lives in src/features.

Wallet and network notes

  • Devnet and Testnet have default RPC URLs. Localhost and Mainnet are disabled until you add an RPC URL in Settings > Cluster.
  • The .skr domain and Seeker Genesis Token lookups always read from mainnet through the public https://api.mainnet-beta.solana.com RPC, whichever cluster is selected.
  • The app asks the selected mobile wallet to approve connection, message signing, sign-in, transaction signing, and transaction submission requests.
  • The sign-and-send demo creates a Memo Program transaction with the text entered in the app. It checks the wallet balance for the estimated fee before submitting.

Learn more

To learn more about developing your project with Expo, look at the following resources: