Skip to content

Conversation

@ihsraham
Copy link

@ihsraham ihsraham commented Nov 5, 2025

Motivation and Context

Updated all iOS example projects to use Web3Auth Swift SDK v12.0.0 following the official release. This update was part of the pre-release testing process where feedback was provided to the engineering team, which has been incorporated into the final v12 release.

Description

This PR updates all iOS example projects to be compatible with Web3Auth Swift SDK v12:

Updated Examples:

  • ios-quick-start: Basic Web3Auth integration example
  • ios-auth0-example: Custom Auth0 verifier integration
  • ios-firebase-example: Firebase authentication integration with new features (Wallet UI, MFA)
  • ios-aggregate-verifier-example: Aggregate verifier with grouped connections
  • ios-solana-example: Solana blockchain integration with Ed25519 keys
  • ios-aptos-example: Aptos blockchain integration
  • ios-playground: Multi-chain playground with ERC20 support

Key Changes Across All Examples:

  • Updated SDK dependency from v11.x to v12.0.0
  • Migrated from W3AInitParams to Web3AuthOptions initialization pattern
  • Updated login flow from W3ALoginParams to LoginParams
  • Changed response handling from Web3AuthState to Web3AuthResponse
  • Updated authentication state checks and private key retrieval methods
  • Added proper error handling with @MainActor annotations
  • Implemented wrapper classes for protocol conformance (avoiding direct extensions on imported types)

Aptos Example Specific Fixes:

  • Fixed Ed25519 private key retrieval method name (getEd25519PrivKey()getEd25519PrivateKey())
  • Added FetchNodeDetails import for Web3AuthNetwork type support
  • Updated curve parameter to .ED25519 for Aptos compatibility
  • Ensured proper initialization without useSFAKey to maintain valid key generation

Additional Improvements:

  • Added new v12 features support: Wallet UI, MFA management, request method
  • Improved concurrency safety with proper @MainActor usage
  • Enhanced error handling across all async operations
  • Updated authentication connection configurations for custom verifiers

How has this been tested?

  • ✅ Compiled all example projects successfully with SDK v12.0.0
  • ✅ Tested email passwordless login flow in quick-start example
  • ✅ Verified Auth0 custom verifier integration
  • ✅ Tested Firebase JWT authentication flow
  • ✅ Validated aggregate verifier with multiple auth providers
  • ✅ Confirmed Solana key generation and blockchain interactions
  • ✅ Verified Aptos Ed25519 key derivation and account creation
  • ✅ Tested multi-chain playground with Ethereum mainnet and testnets
  • ✅ Validated new v12 features (Wallet UI, MFA) in Firebase example
  • ✅ Checked private key retrieval and user info access across all examples

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • My code follows the code style of this project
  • My change requires a change to the documentation
  • I have updated the documentation accordingly
  • All new and existing tests passed
  • My code requires a db migration

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants