X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=README.md;h=d157b7368f91d1fdd8aa8d2a1ac9a72bdd13d8a6;hb=426c5b227de2c88909c9385f40106f94e745eef4;hp=fb21395de6137b0e2c1bf50eb377d86bb4295e5b;hpb=bdbf5666a9d693b9bf11a9e66efe72e5782d82a6;p=rust-lightning diff --git a/README.md b/README.md index fb21395d..d157b736 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,37 @@ +Rust-Lightning +============== + +[![Crate](https://img.shields.io/crates/v/lightning.svg?logo=rust)](https://crates.io/crates/lightning) +[![Documentation](https://img.shields.io/static/v1?logo=read-the-docs&label=docs.rs&message=lightning&color=informational)](https://docs.rs/lightning/) [![Safety Dance](https://img.shields.io/badge/unsafe-forbidden-success.svg)](https://github.com/rust-secure-code/safety-dance/) -Rust-Lightning, not Rusty's Lightning! -===== +Rust-Lightning is a Bitcoin Lightning library written in Rust. The main crate, +`lightning`, does not handle networking, persistence, or any other I/O. Thus, +it is runtime-agnostic, but users must implement basic networking logic, chain +interactions, and disk storage. + +The `lightning-net-tokio` crate implements Lightning networking using the +[Tokio](https://github.com/tokio-rs/tokio) async runtime. + +Status +------ -Documentation can be found at [docs.rs](https://docs.rs/lightning/) +The project implements all of the BOLT specifications in the 1.0 spec except +for [channel queries](https://github.com/lightningnetwork/lightning-rfc/blob/master/07-routing-gossip.md#query-messages). The +implementation has pretty good test coverage that is expected to continue to +improve. There are a number of internal refactorings being done now that will +make the code base more welcoming to new contributors. It is also anticipated +that as developers begin using the API, the lessons from that will result in +changes to the API, so any developer using this API at this stage should be prepared +to embrace that. The current state is sufficient for a developer or project to +experiment with it. Recent increased contribution rate to the project is expected +to lead to a high quality, stable, production-worthy implementation in 2020. -Currently somewhere near 20% towards usable, published to see if there is any -real interest from folks in using a lightning rust library. +Communications for Rust-Lightning and Lightning Development Kit happens through +[LDK slack](http://lightningdevkit.org/). + +Design Goal +----------- The goal is to provide a full-featured but also incredibly flexible lightning implementation, allowing the user to decide how they wish to use it. With that @@ -24,8 +49,21 @@ non-optional/non-test/non-library dependencies. Really really do not add dependencies with dependencies. Do convince Andrew to cut down dependency usage in rust-bitcoin. -Notes on coding style: - * Use tabs. If you want to align lines, use spaces. Any desired alignment - should display fine at any tab-length display setting. -License is Apache-2.0. +Tagline +------- + +*"Rust-Lightning, not Rusty's Lightning!"* + +Contributing +------------ + +Contributors are warmly welcome, see [CONTRIBUTING.md](CONTRIBUTING.md). + +Project Architecture +--------------------- + +For a Rust-Lightning high-level API introduction, see [ARCH.md](ARCH.md). + +License is either Apache-2.0 or MIT, at the option of the user (ie dual-license +Apache-2.0 and MIT).