React Native Starter (Alpha)
Multi-chain wallet starter built with WDK, Expo, and React Native
The React Native Starter Alpha is an Expo + React Native app showing how to build a multi-chain wallet using WDK via BareKit worklets and secure secret management. This starter includes wallet creation/import flows, balances, transactions, and a modular service layer.
Prerequisites: Node.js 22+, and either Xcode (iOS) or Android SDK API 29+ (Android). See the React Native Quickstart for details.
Quick Start
Get your React Native wallet running in minutes with these simple steps:
Clone and Install
Configure Environment
Get your free WDK Indexer API key here and add it to your .env file:
Run Your App
For first-time setup, generate native project files:
Then run the app:
Features
Multi-Token & Chain Support
BTC: Native SegWit transfers on Bitcoin network
USD₮: Gasless transactions on EVM (Ethereum, Polygon, Arbitrum), native transfers on TON and Tron
XAU₮: Gasless transactions on Ethereum network
Wallet Management
Secure Seed Generation: Cryptographically secure entropy generation
Seed Import: Import existing 12-word mnemonic phrases
Encrypted Storage: Secure key storage via
@tetherto/wdk-secret-managerMulti-Account Support: Derive multiple accounts from single seed
Asset Management
Real-Time Balances: Live balance updates via WDK Indexer
Transaction History: Complete transaction tracking and history via WDK Indexer
Price Conversion: Real-time fiat pricing via Pricing Provider
User Experience
QR Code Scanner: Scan addresses and payment requests via camera
Send/Receive Flows: Intuitive transfer interfaces
Network Selection: Choose optimal network for each transaction
Token Selection: Multi-token transfer support
Activity Feed: Real-time transaction monitoring
Project Structure
The starter includes a modular architecture designed for scalability and maintainability:
Detailed project structure can be found in the Github Repository.
Available Scripts
npm start
Start Expo development server with dev client
npm run android
Run on Android emulator/device
npm run ios
Run on iOS simulator
npm run web
Start web development server
npm run prebuild
Generate native project files
npm run prebuild:clean
Clean and regenerate native project files
npm run lint
Run ESLint
npm run lint:fix
Fix ESLint errors
npm run format
Format code with Prettier
npm run format:check
Check code formatting
npm run typecheck
Run TypeScript type checking
Technology Stack
Core Technologies
Expo: ~54.0.8 with development client
React Native: 0.81.4
React: 19.1.0
TypeScript: ~5.9.2
Reanimated: ~4.1.0
New Architecture: Enabled
Build Configuration
Android: minSdkVersion 29
iOS: Latest Xcode toolchain
Build Properties: Configured via
expo-build-properties
Next Steps
Customizing the UI
This starter uses components from the WDK React Native UI Kit. To customize the look and feel:
Theming Guide - Deep dive into theming capabilities
Component Reference - Complete component documentation
Add new functionality
This starter provides a solid foundation that you can extend with additional functionality:
Add support for other tokens using wallet modules in the WDK SDK
Add DeFi protocols like swaps, bridges, and lending using protocol modules
Or explore documentation
WDK SDK Documentation - Learn about the underlying SDK
UI Kit Documentation - Customize the interface
WDK Indexer - Understand data fetching
Secret Manager - Learn about secure key management

