Skip to content
LitecoinDevKitPublic
forked from bitcoindevkit/bdk

About

Litecoin fork of BDK. Crates keep their bdk_* names but alias bitcoin -> litecoin; bdk_mweb adds MWEB scanning, peg-in/out and spends. Work is on the litecoin branch; see PORTING.md and docs/REVIEWERS_GUIDE.md.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

 
 

Litecoin Dev Kit

Litecoin Dev Kit

Build Litecoin wallets that can send privately.

A Litecoin port of Bitcoin Dev Kit. Privacy is MWEB: peg in, send on the extension block, peg out.

MIT or Apache-2.0 Licensed CI Status Rustc Version 1.85.0+

Litecoin Dev Kit (LDK). Every crate keeps its bdk_* name and its bitcoin:: paths, but the bitcoin dependency is aliased to the litecoin crate, so those paths resolve to Litecoin types. Upstream owns the bdk_* names on crates.io, so consume this fork by git revision.

Integrating a wallet? Start with docs/ADOPTION.md (Rust vs FFI, blessed pins, maps-first MWEB API). Prove it with docs/DOGFOOD_CHECKLIST.md. Port internals: PORTING.md. Show Core / ltcsuite how we tested: docs/TEST_EVIDENCE.md. E2E recipes: docs/LITECOIN_E2E.md. Leaving embedded mwebd: docs/MIGRATE_FROM_MWEBD.md first.

Transparent wallets (legacy and SegWit) sync via Electrum/Esplora or bdk_bitcoind_rpc (vendored Litecoin bitcoincore-rpc 0.19). MWEB is spendable through bdk_mweb and bdk_wallet mweb feature. Regtest uses litecoind (+ optional electrs-ltc).

About

These libraries are the Litecoin Dev Kit components for descriptor-based wallets and other applications. They are a port of Bitcoin Dev Kit, built on the litecoin crate and rust-miniscript.

Architecture

The workspace in this repository contains several crates in the /crates directory:

Sub-Directory Description
chain Tools for storing and indexing chain data.
core A collection of core structures used by bdk_chain, bdk_wallet, and this repo's chain data source crates.
esplora Extends the esplora-client crate with methods to fetch chain data from an esplora HTTP server in the form that bdk_chain and Wallet can consume.
electrum Extends the electrum-client crate with methods to fetch chain data from an electrum server in the form that bdk_chain and Wallet can consume.
bitcoind_rpc Extends Litecoin-aliased bitcoincore-rpc (vendored under vendor/bitcoincore-rpc) for emitting chain data from litecoind RPC.
file_store Persistence backend for storing chain data in a single file. Intended for testing and development purposes, not for production.
mweb Litecoin MWEB: stealth keys, receive scan, coin DB, peg-in/out and MWEB→MWEB tx authoring (bdk_mweb).

The bdk_wallet repository and crate contains a higher level Wallet type that depends on the above lower-level mechanism crates.

Security Policy

To report a security issue, please refer to the security policy.

Minimum Supported Rust Version (MSRV)

These crates maintain a MSRV of 1.85.0. To build these crates with the MSRV of 1.85.0 you will need to pin dependencies by running the pin-msrv.sh script. The MSRV only covers building the libraries; tests and examples need the toolchain in rust-version.

  • bdk_core
  • bdk_chain
  • bdk_esplora
  • bdk_file_store
  • bdk_electrum
  • bdk_mweb
  • bdk_bitcoind_rpc
  • bdk_testenv

Just

This project has a justfile for easy command running. You must have just installed.

To see a list of available recipes: just

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

Litecoin fork of BDK. Crates keep their bdk_* names but alias bitcoin -> litecoin; bdk_mweb adds MWEB scanning, peg-in/out and spends. Work is on the litecoin branch; see PORTING.md and docs/REVIEWERS_GUIDE.md.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages