Skip to content

Repository files navigation

bdk_redb

Crate Info Rustc Version Wallet API Docs Coverage Status CI Status MIT or Apache-2.0 Licensed

About

The bdk_redb project provides a redb based persistence backend for bdk_wallet and bdk_chain.

Status

The crate is currently EXPERIMENTAL. DO NOT use with MAINNET wallets.

Architecture

There is currently one published crate in this repository:

  • bdk_redb: Contains Store type (that wraps around the redb database) along with persistence methods.

Features

The crate has a default feature called wallet which provides methods on Store to persist bdk_wallet::ChangeSet and bdk_wallet::WalletPersister implementation for Store.

Minimum Supported Rust Version (MSRV)

The library maintains a MSRV of 1.89.0 due to dependency on redb.

Contributing

The bdk_redb project operates an open contributor model where anyone is welcome to contribute towards development in the form of peer review, documentation, testing, and patches.

Contribution Workflow

  1. Fork & Branch: Fork the repository and create a dedicated topic branch for your feature or fix.
  2. Commits: Ensure commits are atomic, self-contained, and easy to review.
  3. Testing & Documentation: Ensure new features are covered by tests and public APIs are documented.

First-Time Contributors

Please avoid submitting pull requests solely for fixing spelling mistakes, typos, or renaming items, as these will not be prioritized by the maintainers. First-time contributors are encouraged to tackle more substantial tasks such as resolving open issues, adding functional tests, or enhancing documentation.

Using justfile

We use just to streamline development commands. Key shortcuts include:

  • just b: Build the project with all features.
  • just c: Run code checks (formatting, compilation, clippy, commit signature).
  • just f: Format code with cargo +nightly fmt.
  • just t: Run tests across some feature configurations.
  • just p: Run the pre-push check suite (fmt, check, test).

Please run just p before submitting a pull request.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

a redb based persistence backend for bdk

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages