Para provides comprehensive Flutter examples demonstrating real-world integration patterns with our v2 SDK. Our example repository showcases clean, production-ready code that you can adapt to your specific application needs.

Para Flutter Example

Explore our complete Flutter application showcasing Para v2 integration:

What’s Included

The Flutter example demonstrates all major Para v2 features:

πŸ” Authentication Methods:

  • Email and phone verification with passkeys
  • OAuth social login (Google, Apple, Twitter, Discord, Facebook)
  • Farcaster authentication
  • External wallet connections (MetaMask, Phantom)

πŸ’° Wallet Management:

  • Multi-chain wallet creation (EVM, Solana, Cosmos)
  • Session management and persistence
  • Wallet import/export functionality

⛓️ Blockchain Integration:

  • EVM transaction signing with web3dart
  • Solana transaction signing with native SDK
  • Cosmos transaction signing with SignDoc
  • Message signing across all chains

πŸ› οΈ Advanced Features:

  • Pregenerated wallet handling
  • Error handling and retry logic
  • Cancellable operations with ParaFuture
  • Custom UI components and flows

Code Examples by Feature

Authentication Flow Example

The Flutter example includes a complete authentication implementation:

// From: lib/examples/auth/email_auth_example.dart
Future<void> authenticateWithEmail(String email) async {
  final authState = await para.initiateAuthFlow(
    auth: Auth.email(email)
  );
  
  switch (authState.stage) {
    case AuthStage.verify:
      // New user - show verification UI
      showVerificationScreen();
      break;
    case AuthStage.login:
      // Existing user - login with passkey
      await para.handleLogin(
        authState: authState,
        webAuthenticationSession: webAuthSession,
      );
      break;
  }
}

Transaction Signing Examples

Authentication Examples

Getting Started with the Example

Prerequisites

  1. Flutter SDK: Version 3.1.3 or higher
  2. Device Setup: iOS simulator or Android emulator with biometric support
  3. Para API Key: Sign up at developer.getpara.com

Quick Start

# Clone the repository
git clone https://github.com/getpara/examples-hub.git
cd examples-hub/mobile/with-flutter

# Install dependencies
flutter pub get

# Configure your API key
# Edit lib/client/para.dart with your API key

# Run the example
flutter run

Configuration

Update the Para configuration in lib/client/para.dart:

final para = Para(
  environment: Environment.beta, // or Environment.prod
  apiKey: 'YOUR_API_KEY_HERE',
  deepLinkScheme: 'com.getpara.example.flutter',
);

E2E Testing

The Flutter example includes comprehensive end-to-end tests:

# Run E2E tests
cd test_e2e
dart run tool/setup.dart
dart run tool/run_tests.dart

The E2E tests cover:

  • Email and phone authentication flows
  • Wallet creation and management
  • Transaction signing
  • Error handling scenarios

Need Something Specific?

Don’t see an example for your use case? Para’s team is eager to create new examples to help you integrate with different libraries, third-party features, or providers.