X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=README.md;h=d157b7368f91d1fdd8aa8d2a1ac9a72bdd13d8a6;hb=426c5b227de2c88909c9385f40106f94e745eef4;hp=0cf215189f33515bbccc099cf5e82075874c967d;hpb=11bf5bebf2eb714b9e850056334c1a1979f7ffeb;p=rust-lightning diff --git a/README.md b/README.md index 0cf21518..d157b736 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,37 @@ -Rust-Lightning, not Rusty's Lightning! +Rust-Lightning +============== -Currently somewhere near 5% towards usable, published to see if there is any -real interest from folks in either contributing to or using a lightning rust -library. +[![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 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 +------ + +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. + +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 @@ -20,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).