LDK Node v0.1.0: A Ready-To-Go Lightning Node Library

“LDK Node is a ready-to-go Lightning node library built using LDK and BDK.””While LDK’s high level of customization is great for builders, it is also significantly more complex. LDK Node is a lightweight solution. The much smaller API surface (30 exposed API methods compared to LDK’s 900) reduces complexity without infringing on usability.””Even with reduced complexity, LDK Node is still configurable enough to operate a fully functional self-custodial Lightning node across multiple use cases.”This first release of LDK Node comes with an opinionated set of design choices and ready-to-go modules:

– The integrated BDK wallet handles on-chain data.
– Chain data is sourced from an Esplora server, while support for Electrum and bitcoind RPC will follow soon.
– Wallet and channel state may be persisted to an SQLite database, to file system, or to a custom back-end to be implemented by the user. Support for Versioned Storage Service (VSS) will follow soon.
– Gossip data may be sourced via Lightning’s peer-to-peer network or the Rapid Gossip Sync (RGS) protocol.
– Entropy for Lightning and on-chain wallets may be sourced from raw bytes or a BIP39 mnemonic. In addition, LDK Node offers the means to generate and persist the entropy bytes to disk.”LDK Node itself is written in Rust and may therefore be natively added as a library dependency to any std Rust program. However, beyond its Rust API, it offers Swift, Kotlin, and Python language bindings based on UniFFI. Moreover, Flutter bindings are also available to allow usage of the LDK Node library in mobile environments.””This is only the beginning for LDK Node. Development for the next release has already started. Since LDK Node is open source, we encourage anyone who wants to follow along or contribute on Github. Thanks to @_tnull for all his hard work thus far!”

Blog Post / Archive
GitHub Repo
API Docs

Leave a Reply

Your email address will not be published. Required fields are marked *