2017-01-12 01:12:53 +01:00
## Lightning Network Daemon
2017-03-22 06:05:55 +01:00
2018-07-06 21:20:51 +02:00
[![Build Status ](https://img.shields.io/travis/lightningnetwork/lnd.svg )](https://travis-ci.org/lightningnetwork/lnd)
2018-05-17 03:50:25 +02:00
[![MIT licensed ](https://img.shields.io/badge/license-MIT-blue.svg )](https://github.com/lightningnetwork/lnd/blob/master/LICENSE)
[![Irc ](https://img.shields.io/badge/chat-on%20freenode-brightgreen.svg )](https://webchat.freenode.net/?channels=lnd)
2017-03-22 06:05:55 +01:00
[![Godoc ](https://godoc.org/github.com/lightningnetwork/lnd?status.svg )](https://godoc.org/github.com/lightningnetwork/lnd)
2017-01-12 01:12:53 +01:00
2017-09-29 23:06:22 +02:00
< img src = "logo.png" >
2017-08-23 06:00:42 +02:00
The Lightning Network Daemon (`lnd`) - is a complete implementation of a
[Lightning Network ](https://lightning.network ) node and currently deployed on
`testnet3` - the Bitcoin Test Network. `lnd` has several pluggable back-end
chain services including [`btcd` ](https://github.com/btcsuite/btcd ) (a
2018-04-03 01:19:16 +02:00
full-node), [`bitcoind` ](https://github.com/bitcoin/bitcoin ), and
[`neutrino` ](https://github.com/lightninglabs/neutrino ) (a new experimental light client). The project's codebase uses the
2017-08-23 06:00:42 +02:00
[btcsuite ](https://github.com/btcsuite/ ) set of Bitcoin libraries, and also
exports a large set of isolated re-usable Lightning Network related libraries
2018-05-17 03:50:25 +02:00
within it. In the current state `lnd` is capable of:
2017-08-23 06:00:42 +02:00
* Creating channels.
* Closing channels.
* Completely managing all channel states (including the exceptional ones!).
* Maintaining a fully authenticated+validated channel graph.
* Performing path finding within the network, passively forwarding incoming payments.
2018-05-17 03:50:25 +02:00
* Sending outgoing [onion-encrypted payments ](https://github.com/lightningnetwork/lightning-onion )
2017-08-23 06:00:42 +02:00
through the network.
* Updating advertised fee schedules.
* Automatic channel management ([`autopilot`](https://github.com/lightningnetwork/lnd/tree/master/autopilot)).
2017-01-10 21:14:37 +01:00
## Lightning Network Specification Compliance
2018-01-23 04:25:12 +01:00
`lnd` _fully_ conforms to the [Lightning Network specification
2017-08-23 06:00:42 +02:00
(BOLTs)](https://github.com/lightningnetwork/lightning-rfc). BOLT stands for:
Basic of Lightning Technologies. The specifications are currently being drafted
2017-01-10 21:14:37 +01:00
by several groups of implementers based around the world including the
developers of `lnd` . The set of specification documents as well as our
implementation of the specification are still a work-in-progress. With that
2017-12-20 02:28:38 +01:00
said, the current status of `lnd` 's BOLT compliance is:
2017-01-10 21:14:37 +01:00
2017-08-23 06:00:42 +02:00
- [X] BOLT 1: Base Protocol
2017-11-11 04:47:17 +01:00
- [X] BOLT 2: Peer Protocol for Channel Management
2017-08-23 06:00:42 +02:00
- [X] BOLT 3: Bitcoin Transaction and Script Formats
2017-01-10 21:14:37 +01:00
- [X] BOLT 4: Onion Routing Protocol
- [X] BOLT 5: Recommendations for On-chain Transaction Handling
- [X] BOLT 7: P2P Node and Channel Discovery
- [X] BOLT 8: Encrypted and Authenticated Transport
2017-09-29 23:42:28 +02:00
- [X] BOLT 9: Assigned Feature Flags
- [X] BOLT 10: DNS Bootstrap and Assisted Node Location
- [X] BOLT 11: Invoice Protocol for Lightning Payments
2016-01-16 09:13:11 +01:00
2017-08-23 06:00:42 +02:00
## Developer Resources
The daemon has been designed to be as developer friendly as possible in order
2017-08-31 02:34:28 +02:00
to facilitate application development on top of `lnd` . Two primary RPC
2017-08-23 06:00:42 +02:00
interfaces are exported: an HTTP REST API, and a [gRPC ](https://grpc.io/ )
service. The exported API's are not yet stable, so be warned: they may change
drastically in the near future.
2017-08-31 02:34:28 +02:00
An automatically generated set of documentation for the RPC APIs can be found
2018-07-06 21:20:51 +02:00
at [api.lightning.community ](https://api.lightning.community ). A set of developer
2017-08-23 06:00:42 +02:00
resources including talks, articles, and example applications can be found at:
2018-07-06 21:20:51 +02:00
[dev.lightning.community ](https://dev.lightning.community ).
2017-08-23 06:00:42 +02:00
Finally, we also have an active
2018-04-13 02:22:52 +02:00
[Slack ](https://join.slack.com/t/lightningcommunity/shared_invite/enQtMzQ0OTQyNjE5NjU1LWRiMGNmOTZiNzU0MTVmYzc1ZGFkZTUyNzUwOGJjMjYwNWRkNWQzZWE3MTkwZjdjZGE5ZGNiNGVkMzI2MDU4ZTE ) where protocol developers, application developers, testers and users gather to
2017-08-23 06:00:42 +02:00
discuss various aspects of `lnd` and also Lightning in general.
2016-01-18 04:53:50 +01:00
## Installation
2017-08-03 03:52:37 +02:00
In order to build from source, please see [the installation
instructions](docs/INSTALL.md).
2018-05-17 03:50:25 +02:00
## Docker
To run lnd from Docker, please see the main [Docker instructions ](docs/DOCKER.md )
2017-01-12 01:12:53 +01:00
2017-01-10 21:14:37 +01:00
## IRC
* irc.freenode.net
* channel #lnd
* [webchat ](https://webchat.freenode.net/?channels=lnd )
2016-01-16 03:24:38 +01:00
2017-01-12 01:12:53 +01:00
## Further reading
* [Step-by-step send payment guide with docker ](https://github.com/lightningnetwork/lnd/tree/master/docker )
2017-03-22 06:05:55 +01:00
* [Contribution guide ](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md )