# rust-lightning *A flexible [[Lightning]] implementation and supporting batteries* https://github.com/rust-bitcoin/rust-lightning Links: [[Rust]], [[Lightning]], [[Lightning Dev Kit|LDK]] - Basically, use this if you need custom features like your own chain sync, key management, data storage and backup, etc. Otherwise [[lnd]] / [[c-lightning]] are fine. - Documentation: https://lightningdevkit.org/docs/ - Building a Node with LDK in Rust - Using LDK - Key Management - Blockchain Data - [[Rust]] LDK sample code: https://github.com/lightningdevkit/ldk-sample ## [README](https://github.com/rust-bitcoin/rust-lightning) LDK/Rust-Lightning is a generic library which allows you to build a lightning node without needing to worry about getting all of the lightning state machine, routing, and on-chain punishment code (and other chain interactions) exactly correct. **Note that Rust-Lightning isn't, in itself, a node. There are various working/in progress demos which could be used as a node today, but if you "just" want a generic lightning node, you're almost certainly better off with `c-lightning`/`lnd` - if, on the other hand, you want to integrate lightning with custom features such as your own chain sync, your own key management, your own data storage/backup logic, etc., LDK is likely your only option.** Some Rust-Lightning utilities such as those in `chan_utils` are also suitable for use in non-LN Bitcoin applications such as DLCs and bulletin boards.