Welcome to BitcoinKit
The BitcoinKit library is a Swift implementation of the Bitcoin protocol which support both BCH and BTC. Improving the mobile ecosystem for Bitcoin developers is our mission.
BitcoinKit allows maintaining a wallet, sending or receiving transactions without a full blockchain node. Following is a wallet app that demonstrates the way to use it.
Release notes are here.
- Encoding/decoding addresses: base58, Cashaddr, P2PKH, P2SH, WIF format.
- Transaction building blocks: inputs, outputs, scripts.
- EC keys and signatures.
- BIP32, BIP44 hierarchical deterministic wallets.
- BIP39 implementation.
- SPV features are under construction. The following functions cannot work well sometimes.
- Send/receive transactions.
- See current balance in a wallet.
- iOS 9.0+ / Mac OS X 10.11+ / tvOS 9.0+ / watchOS 2.0+
- Xcode 10.0+
- Swift 5.0+
$ gem install cocoapods
CocoaPods 1.5.0+ is required to build BitcoinKit.
To integrate BitcoinKit into your Xcode project using CocoaPods, specify it in your
source 'https://github.com/CocoaPods/Specs.git' platform :ios, '13.0' use_frameworks! target '<Your Target Name>' do pod 'BitcoinKit', '~> 1.1.0' end
Then, run the following command:
$ pod install
Add this to
github "yenom/BitcoinKit" ~> 1.1.0
carthage update to build the framework and drag the built
BitcoinKit.framework into your Xcode project.
Simply add the following lines to dependencies of your Package.swift:
.package(url: "https://github.com/yenom/BitcoinKit.git", .upToNextMinor(from: "1.1.0"))
Note that following data types and features are currently not supported on Linux platform.
- SQLite based BlockStore
Contributions to BitcoinKit are welcome and encouraged! Feel free to open issues, drop us pull requests.
Authors & Maintainers
BitcoinKit is available under the MIT license. See the LICENSE file for more info.
Thank you to all our backers!
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]