What is web3swift?

Elegant Web3js functionality in Swift. Native ABI parsing and smart contract interactions on Ethereum network.

web3swift

  • Swift implementation of web3.js functionality
  • Interaction with remote node via JSON RPC
  • Smart-contract ABI parsing
  • Local keystore management (geth compatible)
  • Private key and transaction were created directly on an iOS device and sent directly to Infura node
  • Native API
  • Security (as cool as a hard wallet! Right out-of-the-box! :box: )
  • No unnecessary dependencies
  • Possibility to work with all existing smart contracts
  • Referencing the newest features introduced in Solidity

Features

  • Create Account
  • Import Account
  • Sign transactions
  • Send transactions, call functions of smart-contracts, estimate gas costs
  • Serialize and deserialize transactions and results to native Swift types
  • Convenience functions for chain state: block number, gas price
  • Check transaction results and get receipt
  • Parse event logs for transaction
  • Manage user’s private keys through encrypted keystore abstractions
  • Batched requests in concurrent mode, checks balances of 580 tokens (from the latest MyEtherWallet repo) over 3 seconds

Overview

  • Pricing: Free
  • Resource Link: https://github.com/BANKEX/web3swift
  • Resource Maker on Twitter: BANKEX
  • Mobile Platform Destination: iOS Apps
  • Mobile Platform Support: Native iOS
  • Programming Languages: Swift
  • iOS Versions Supported: iOS 9.0+, iOS 10.0+, iOS 11.0+, iOS 12.0+
  • CocoaPods: web3swift.pod
  • Carthage: BANKEX/web3swift
  • Swift Package Manager: https://github.com/BANKEX/web3swift.git