# EthereumKit
**Repository Path**: cnsuer/EthereumKit
## Basic Information
- **Project Name**: EthereumKit
- **Description**: EthereumKit is a free, open-source Swift framework for easily interacting with the Ethereum.
- **Primary Language**: Swift
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 1
- **Created**: 2018-06-01
- **Last Updated**: 2022-06-28
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
EthereumKit is a Swift framework that enables you to create Ethereum wallet and use it in your app.
```swift
// BIP39: Generate seed and mnemonic sentence.
let mnemonic = Mnemonic.create()
let seed = Mnemonic.createSeed(mnemonic: mnemonic)
// BIP32: Key derivation and address generation
let wallet: Wallet
do {
wallet = try Wallet(seed: seed, network: .main)
} catch let error {
fatalError("Error: \(error.localizedDescription)")
}
// Send some ether
let rawTransaction = RawTransaction(ether: "0.15", to: address, gasPrice: Converter.toWei(GWei: 10), gasLimit: 21000, nonce: 0)
let tx = try wallet.signTransaction(rawTransaction)
geth.sendRawTransaction(rawTransaction: tx) { result in
// Do something...
}
```
## Set up
- Run `make bootstrap`
## Features
- Mnemonic recovery phrease in [BIP39](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki)
- [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki)/[BIP44](https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki) HD wallet
- [EIP55](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-55.md) format address encoding
- [EIP155](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-155.md) replay attack protection
- Sign transaction
## Documentations
- [Getting Started](Documentation/GettingStarted.md)
- [JSONRPC API](Documentation/JSONRPC.md)
- [Etherscan API](Documentation/Etherscan.md)
## Requirements
- Swift 4.0 or later
- iOS 9.0 or later
## Installation
#### [Carthage](https://github.com/Carthage/Carthage)
- Insert `github "yuzushioh/EthereumKit"` to your Cartfile.
- Run `carthage update --platform ios`.
## Dependency
- [CryptoEthereumSwift](https://github.com/yuzushioh/CryptoEthereumSwift): Ethereum cryptography implementations for iOS framework
## Apps using EthereumKit
- [gnosis/safe-ios](https://github.com/gnosis/safe-ios): Gnosis Safe is a multi signature (2FA) wallet for personal usage.
- [popshootjapan/WeiWallet-iOS](https://github.com/popshootjapan/WeiWallet-iOS): Wei Wallet for iOS
## Author
Ryo Fukuda, [@yuzushioh](https://twitter.com/yuzushioh), yuzushioh@gmail.com
## License
EthereumKit is released under the [Apache License 2.0](LICENSE.md).