We have decided to temporarily archive this repository and place it into maintenance mode. This decision allows us to focus our efforts and resources on advancing our core product line. During this period, active development and the addition of new features will be paused. We value the contributions of the community and appreciate your understanding as we prioritize our main projects. We look forward to resuming development in the future and will keep you updated on any changes.
This demo project provides you with the simplest usage of Magic IOS SDK including Web3 functionalities
Email OTP Login: Authenticate a user passwordlessly using a one-time code sent to the specified user's email address.
SMS Login:Authenticate a user passwordlessly using a one-time code sent to the specified phone number.
OAuth Login:Authenticate a user via oauth providers
Eth SendTransaction: We support blockchain interactions on iOS just like how you do it in the browser.
Contract: We support contract to allow you to deploy contracts, call deployed contract functions or read contract storages.
Swift Package Manager — This example demonstrates how to build a simple web3 / Ethereum app using Magic with Swift Package Manager.
The Cocoapods example has been removed. We recommend using Swift Package Manager (SPM) because:
- Native support — SPM is built into Xcode and supported by Apple as the default dependency manager for Swift.
- Simpler workflow — No extra tools (
pod install, Podfile, workspace) or Ruby/Bundler setup. - Ecosystem alignment — Most Swift libraries publish SPM-first; Cocoapods is no longer the primary distribution path for many projects.
- Maintenance — We are focusing support and documentation on SPM to keep the demo and SDK integration straightforward.
Use the Swift Package Manager example for the current recommended integration.