bdk-swift
This project builds a Swift package that provides Swift language bindings for the
bdk
library. The Swift language bindings are created by the bdk-ffi
project which
is included as a git submodule of this repository.
How to Use
To use the Swift language bindings for bdk
in your Xcode iOS or MacOS project add
the github repository (https://github.com/bitcoindevkit/bdk-swift) and select one of the
release versions. You may then import and use the BitcoinDevKit
library in your Swift
code. For example:
import BitcoinDevKit
...
let desc = "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/0/*)"
let databaseConfig = DatabaseConfig.memory
let wallet = try Wallet.init(descriptor: desc, changeDescriptor: nil, network: Network.regtest, databaseConfig: databaseConfig)
let addressInfo = try wallet.getAddress(addressIndex: AddressIndex.new)
Example Projects
How to Build and Publish
If you are a maintainer of this project or want to build and publish this project to your own Github repository use the following steps:
- If it doesn't already exist, create a new
release/0.MINOR
branch from themaster
branch - Run the
publish-spm
workflow on Github for branchrelease/0.MINOR
and version0.MINOR.0
- Copy the changelog from corresponding
bdk-ffi
release description to this release
Languages
Rust
64.6%
Kotlin
18.1%
Swift
9.5%
Python
4.6%
Shell
2.2%
Other
1%