The goal of LNTools is to build composible modules of the Lightning Network specificiation. These modules can be combined into tools that can interact with the Lightning Network for research, testing, or building awesome things.
This module is not intended to be an alternative to LND, c-lightning, or Acinq.
LNTools is structured as a monorepo with individual packages existing inside of packages
. Binaries will live inside src
.
- @lntools/invoice - encoding/decoding LN invoices
- @lntools/noise - Noise Protocol socket/server
- @lntools/wire - wire protocol for the Lightning Network
Current status of Lightning RFC specification implementation:
- BOLT 1 - Base Protocol
- BOLT 2 - Peer Protocol for Channel Management
- BOLT 3 - Bitcoin Transaction and Script Format
- BOLT 4 - Onion Routing Protocol
- BOLT 5 - Recommendations for On-chain Transaction Handling
- BOLT 7 - P2P Node and Channel Discovery
- BOLT 8 - Encrypted and Authenticated Transport: @lntools/noise
- BOLT 9 - Assigned Feature Flags
- BOLT 10 - DNS Bootstrap and Assisted Node Location
- BOLT 11 - Invoice Protocol for Lightning Payments: @lntools/invoice
Refer to the contribution guide.