Skip to content

[BOUNTY] Implement Freighter Wallet Integration #24

@ANAVHEOBA

Description

@ANAVHEOBA

[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 Freighter
  • disconnectWallet() - Disconnect wallet
  • getPublicKey() - Get user's public key
  • signTransaction() - Sign transactions
  • checkWalletInstalled() - 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 button
  • WalletInfo.tsx - Display connected wallet
  • NetworkSelector.tsx - Switch networks
  • InstallPrompt.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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions