1
- Rust-Lightning
1
+ ` rust-lightning `
2
2
==============
3
3
4
4
[ ![ Crate] ( https://img.shields.io/crates/v/lightning.svg?logo=rust )] ( https://crates.io/crates/lightning )
5
5
[ ![ Documentation] ( https://img.shields.io/static/v1?logo=read-the-docs&label=docs.rs&message=lightning&color=informational )] ( https://docs.rs/lightning/ )
6
6
[ ![ Safety Dance] ( https://img.shields.io/badge/unsafe-forbidden-success.svg )] ( https://github.com/rust-secure-code/safety-dance/ )
7
7
8
- Rust-Lightning is a Bitcoin Lightning library written in Rust. The main crate,
8
+ ` rust-lightning ` is a Bitcoin Lightning library written in Rust. The main crate,
9
9
` lightning ` , does not handle networking, persistence, or any other I/O. Thus,
10
10
it is runtime-agnostic, but users must implement basic networking logic, chain
11
11
interactions, and disk storage. More information is available in the ` About `
@@ -21,7 +21,7 @@ lessons from that will result in changes to the API, so any developer using this
21
21
API at this stage should be prepared to embrace that. The current state is
22
22
sufficient for a developer or project to experiment with it.
23
23
24
- Communications for Rust-Lightning and Lightning Development Kit happens through
24
+ Communications for ` rust-lightning ` and Lightning Development Kit happens through
25
25
our LDK [ Discord] ( https://discord.gg/5AcknnMfBw ) channels.
26
26
27
27
Crates
@@ -38,30 +38,30 @@ Crates
38
38
[ BOLT #11 ] ( https://github.com/lightning/bolts/blob/master/11-payment-encoding.md )
39
39
Lightning invoices.
40
40
5 . [ lightning-net-tokio] ( ./lightning-net-tokio )
41
- Implementation of the rust-lightning network stack using the
42
- [ Tokio] ( https://github.com/tokio-rs/tokio ) ` async ` runtime. For Rust-Lightning
41
+ Implementation of the ` rust-lightning ` network stack using the
42
+ [ Tokio] ( https://github.com/tokio-rs/tokio ) ` async ` runtime. For ` rust-lightning `
43
43
clients which wish to make direct connections to Lightning P2P nodes, this is
44
44
a simple alternative to implementing the required network stack, especially
45
45
for those already using Tokio.
46
46
6 . [ lightning-persister] ( ./lightning-persister )
47
- Implements utilities to manage Rust-Lightning channel data persistence and retrieval.
47
+ Implements utilities to manage ` rust-lightning ` channel data persistence and retrieval.
48
48
Persisting channel data is crucial to avoiding loss of channel funds.
49
49
7 . [ lightning-rapid-gossip-sync] ( ./lightning-rapid-gossip-sync )
50
50
Client for rapid gossip graph syncing, aimed primarily at mobile clients.
51
51
52
52
About
53
53
-----------
54
- LDK/Rust-Lightning is a generic library which allows you to build a Lightning
54
+ LDK/` rust-lightning ` is a generic library which allows you to build a Lightning
55
55
node without needing to worry about getting all of the Lightning state machine,
56
56
routing, and on-chain punishment code (and other chain interactions) exactly
57
- correct. Note that Rust-Lightning isn't, in itself, a node. There are various
57
+ correct. Note that ` rust-lightning ` isn't, in itself, a node. There are various
58
58
working/in progress demos which could be used as a node today, but if you "just"
59
59
want a generic Lightning node, you're almost certainly better off with [ Core
60
60
Lightning] ( https://github.com/ElementsProject/lightning ) or
61
61
[ LND] ( https://github.com/lightningnetwork/lnd ) - if, on the other hand, you want
62
62
to integrate Lightning with custom features such as your own chain sync, your
63
63
own key management, your own data storage/backup logic, etc., LDK is likely your
64
- only option. Some Rust-Lightning utilities such as those in
64
+ only option. Some ` rust-lightning ` utilities such as those in
65
65
[ ` chan_utils ` ] ( ./lightning/src/ln/chan_utils.rs ) are also suitable for use in
66
66
non-LN Bitcoin applications such as DLCs and bulletin boards.
67
67
@@ -71,7 +71,7 @@ Bitcoin Core RPC/REST interface is available
71
71
that demo are composable, so you can pick the off-the-shelf parts you want
72
72
and replace the rest.
73
73
74
- In general, Rust-Lightning does not provide (but LDK has implementations of):
74
+ In general, ` rust-lightning ` does not provide (but LDK has implementations of):
75
75
* on-disk storage - you can store the channel state any way you want - whether
76
76
Google Drive/iCloud, a local disk, any key-value store/database/a remote
77
77
server, or any combination of them - we provide a clean API that provides
@@ -113,26 +113,26 @@ Design Goal
113
113
The goal is to provide a full-featured but also incredibly flexible Lightning
114
114
implementation, allowing the user to decide how they wish to use it. With that
115
115
in mind, everything should be exposed via simple, composable APIs. More
116
- information about Rust-Lightning 's flexibility is provided in the ` About `
116
+ information about ` rust-lightning ` 's flexibility is provided in the ` About `
117
117
section above.
118
118
119
119
For security reasons, do not add new dependencies. Really do not add new
120
120
non-optional/non-test/non-library dependencies. Really really do not add
121
121
dependencies with dependencies. Do convince Andrew to cut down dependency usage
122
- in rust-bitcoin.
122
+ in ` rust-bitcoin ` .
123
123
124
- Rust-Lightning vs. LDK (Lightning Development Kit)
124
+ ` rust-lightning ` vs. LDK (Lightning Development Kit)
125
125
-------------
126
- Rust-Lightning refers to the core ` lightning ` crate within this repo, whereas
127
- LDK encompasses Rust-Lightning and all of its sample modules and crates (e.g.
126
+ ` rust-lightning ` refers to the core ` lightning ` crate within this repo, whereas
127
+ LDK encompasses ` rust-lightning ` and all of its sample modules and crates (e.g.
128
128
the ` lightning-persister ` crate), language bindings, sample node
129
- implementation(s), and other tools built around using Rust-Lightning for
129
+ implementation(s), and other tools built around using ` rust-lightning ` for
130
130
Lightning integration or building a Lightning node.
131
131
132
132
Tagline
133
133
-------
134
134
135
- * "Rust-Lightning , not Rusty's Lightning!"*
135
+ * "` rust-lightning ` , not Rusty's Lightning!"*
136
136
137
137
Contributing
138
138
------------
@@ -142,7 +142,7 @@ Contributors are warmly welcome, see [CONTRIBUTING.md](CONTRIBUTING.md).
142
142
Project Architecture
143
143
---------------------
144
144
145
- For a Rust-Lightning high-level API introduction, see [ ARCH.md] ( ARCH.md ) .
145
+ For a ` rust-lightning ` high-level API introduction, see [ ARCH.md] ( ARCH.md ) .
146
146
147
147
License is either Apache-2.0 or MIT, at the option of the user (ie dual-license
148
148
Apache-2.0 and MIT).
0 commit comments