Skip to content

Commit c750da5

Browse files
committed
Update README to clarify binding generation and repo layout
Clarifies that Dart bindings and the native library are generated locally and not checked into the repository. Updates repository layout descriptions and setup instructions to reflect this, and specifies that binding generation requires a macOS or Linux host. Also refines test descriptions for accuracy.
1 parent 0b8f465 commit c750da5

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

README.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
11
# bdk-dart
22

33
Dart bindings for the [Bitcoin Dev Kit (BDK)](https://bitcoindevkit.org/) wallet library.
4-
The repo packages the generated UniFFI bindings (`lib/bdk.dart`) together with the
5-
compiled `libbdkffi` native library so Dart and Flutter apps can work with descriptor-based
6-
wallets, key management utilities, and blockchain backends from BDK.
4+
The repo contains the sources for generating UniFFI-based bindings (`lib/bdk.dart`) and the
5+
`libbdkffi` native library, both of which are produced locally (they are gitignored and not
6+
checked into the repository) so Dart and Flutter apps can work with descriptor-based wallets,
7+
key management utilities, and blockchain backends from BDK.
78

89
## Repository layout
910

1011
| Path | Purpose |
1112
| ---- | ------- |
1213
| `bdk-ffi/` | Rust sources and build scripts for the underlying `bdk-ffi` crate. |
13-
| `lib/` | Generated Dart bindings (`bdk.dart`) produced by UniFFI-Dart. |
14+
| `lib/` | Dart bindings (`bdk.dart`) generated locally by UniFFI-Dart. |
1415
| `examples/` | Standalone Dart examples that exercise common workflows. |
15-
| `test/` | Integration-style tests that cover wallet creation, persistence, and networking. |
16+
| `test/` | Offline/construction/persistence tests (not full integration tests). |
1617
| `bdk_demo/` | Flutter sample app you can point at mobile targets once the bindings are built. |
1718
| `scripts/generate_bindings.sh` | Helper used to rebuild the native library and regenerate the Dart bindings. |
1819

@@ -38,7 +39,7 @@ cd bdk-dart
3839
```bash
3940
dart pub get
4041
```
41-
2. Generate the Dart bindings and native binary:
42+
2. Generate the Dart bindings and native binary (requires a macOS or Linux host):
4243
```bash
4344
./scripts/generate_bindings.sh
4445
```
@@ -70,8 +71,8 @@ build steps or platform-specific build scripts).
7071

7172
## Testing
7273

73-
Once `lib/bdk.dart` and the native library are available you can execute the Dart test
74-
suite, which covers wallet creation, persistence, offline behavior, and descriptor APIs:
74+
Once you have generated `lib/bdk.dart` and the native library locally you can execute the
75+
Dart test suite, which covers wallet creation, persistence, offline behavior, and descriptor APIs:
7576

7677
```bash
7778
dart test

0 commit comments

Comments
 (0)