Customizable
Designed from the ground up to be easily customized to your application needs: persistence, networking, chain source, routing, key management, wallet, you name it.
Focus on what matters
A full implementation of the Lightning Network protocol, so you can focus on crafting custom-tailored user experiences.
High performance & compact
As lightweight as you need it to be and optimized to run on all embedded devices such as mobile phones, IoT devices, PoS terminals and more.
Why LDK?
Easily integrate Lightning features into any Bitcoin wallet
Multi-Language Support
We support native API's including Rust, C, Swift, Java & Kotlin so you can build Lightning applications in your preferred programming language.
Custom Persistent Storage
Our API's let you choose how to backup channel state. This gives you multi-wallet device access and lets you save state locally, to the cloud or an alternative backup scheme.
Custom Block Data Sources
Use a local full node, an SPV node, or your own Electrum server with API access to source data about the blockchain and feed it to LDK for decision-making about whether to sign a state update.
Single Wallet
No need to create separate Bitcoin & Lightning wallets, forcing users to backup an additional recovery phrase. Instead, we let you define your own wallet and create one unified experience.