Metadata-Version: 2.4
Name: bdkpython
Version: 2.3.1
Summary: The Python language bindings for the Bitcoin Development Kit
Author-email: Bitcoin Dev Kit Developers <dev@bitcoindevkit.org>
License-Expression: MIT OR Apache-2.0
Project-URL: Homepage, https://github.com/bitcoindevkit
Project-URL: Repository, https://github.com/bitcoindevkit/bdk-python
Keywords: bitcoin,bdk,wallet,ffi,rust
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE-MIT
License-File: LICENSE-APACHE
Dynamic: license-file

# bdkpython

The Python language bindings for the [bitcoindevkit](https://github.com/bitcoindevkit).

See the [package on PyPI](https://pypi.org/project/bdkpython/).

# Working with the submodule

This repository uses the bdk-ffi repository as a git submodule. Here are useful tips for working with the submodule:

1. When initially cloning the repo, the `bdk-ffi` submodule will be empty locally. You can intitiate/populate the directory by using the `just submodule-init` command.
2. If you make local changes to the `bdk-ffi` directory while developing and want to hard delete all changes and return to the exact committed version hash of the bdk-ffi repo, use the `just submodule-reset` command.

## Local Testing and Usage

1. Sync dependencies with `uv`
2. Run one of the build script
3. Create the wheel
4. Install the library
5. Run the tests

```sh
uv sync

bash scripts/generate-macos-arm64.sh

uv build --wheel -v

uv pip install ./dist/bdkpython-<yourversion>.whl --force-reinstall

uv run python -m unittest --verbose
```

## Build HTML API Documentation (Optional)

6. Generate docs
7. Build HTML Documentation

```sh
uv run python ./docs/generate_docs.py

uv run python -m sphinx -b html -W --keep-going -v docs/source docs/_build/html
```
