-
Notifications
You must be signed in to change notification settings - Fork 34
Open
Labels
bountyHas USDC reward via Drips WaveHas USDC reward via Drips WavefrontendUI/UX workUI/UX workpriority: highUrgentUrgent
Description
[BOUNTY] Implement Freighter Wallet Integration
Description
Integrate Freighter wallet for connecting users' Stellar accounts, signing transactions, and managing wallet state in the frontend.
Scope
Wallet Integration
Create frontend/lib/wallet.ts:
connectWallet()- Connect to FreighterdisconnectWallet()- Disconnect walletgetPublicKey()- Get user's public keysignTransaction()- Sign transactionscheckWalletInstalled()- Check if Freighter is installed
State Management
Create frontend/lib/store.ts with Zustand:
- Wallet connection state
- User public key
- Network selection (testnet/mainnet)
- Loading states
UI Components
Create frontend/components/wallet/:
ConnectButton.tsx- Connect/disconnect buttonWalletInfo.tsx- Display connected walletNetworkSelector.tsx- Switch networksInstallPrompt.tsx- Prompt to install Freighter
Error Handling
- Wallet not installed
- User rejected connection
- Network mismatch
- Transaction signing errors
Acceptance Criteria
- Connect/disconnect works
- Wallet state persists across page reloads
- Transaction signing works
- Error handling for all cases
- UI components styled with Tailwind
- Mobile responsive
- Documentation with examples
Labels: bounty,frontend,priority: high
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bountyHas USDC reward via Drips WaveHas USDC reward via Drips WavefrontendUI/UX workUI/UX workpriority: highUrgentUrgent