diff --git a/.readme/logo.png b/.readme/logo.png index d1d267a9c..2f1f97a52 100644 Binary files a/.readme/logo.png and b/.readme/logo.png differ diff --git a/.readme/screen-1.png b/.readme/screen-1.png index 07b68e82c..43d05f821 100644 Binary files a/.readme/screen-1.png and b/.readme/screen-1.png differ diff --git a/README.md b/README.md index 47c0215fe..58ca0270d 100644 --- a/README.md +++ b/README.md @@ -7,20 +7,23 @@ This software follows the [Lightning Network Specifications (BOLTs)](https://github.com/lightningnetwork/lightning-rfc). Other implementations include [lightning-c], [lit], and [lnd]. + --- + :construction: Both the BOLTs and Eclair itself are a work in progress. Expect things to break/change! - :warning: Eclair currently only runs on regtest or testnet. + :warning: Eclair currently only runs on regtest or testnet. We recommend testing in regtest, as it allows you to generate blocks manually and not wait for confirmations. --- ## Lightning Network Specification Compliance -Eclair 0.2-Alpha1 is fully compliant with the BOLTs at commit [06a5e6cbdbb4c6f8b8dab444de497cdb9c7d7f02](https://github.com/lightningnetwork/lightning-rfc/commit/06a5e6cbdbb4c6f8b8dab444de497cdb9c7d7f02): +[Eclair 0.2-alpha1](https://github.com/ACINQ/eclair/releases/tag/v0.2-alpha1) is compliant with the BOLTs at commit [06a5e6cbdbb4c6f8b8dab444de497cdb9c7d7f02](https://github.com/lightningnetwork/lightning-rfc/commit/06a5e6cbdbb4c6f8b8dab444de497cdb9c7d7f02), with the following caveats: - [X] BOLT 1: Base Protocol - [X] BOLT 2: Peer Protocol for Channel Management - [X] BOLT 3: Bitcoin Transaction and Script Formats - [X] BOLT 4: Onion Routing Protocol - [X] BOLT 5: Recommendations for On-chain Transaction Handling + * If a revoked commitment tx is published, only the offender's main output will be stolen as punishment, not the HTLCs. - [X] BOLT 7: P2P Node and Channel Discovery - [X] BOLT 8: Encrypted and Authenticated Transport - [X] BOLT 9: Assigned Feature Flags @@ -37,7 +40,7 @@ Eclair needs a _synchronized_, _segwit-ready_, _non-pruning_, _tx-indexing_ [Bit Run bitcoind with the following `bitcoin.conf`: ``` -testnet=1 +regtest=1 server=1 rpcuser=XXX rpcpassword=XXX @@ -65,11 +68,13 @@ Eclair will create a directory in `~/.eclair` by default. You may change this di If you want to change configuration parameters, create a file named `eclair.conf` in eclair's home directory. +:warning: Using separate `datadir` is mandatory if you want to run several instances of eclair on the same machine. You will also have to change ports. + option | description | default value -----------------------------|---------------------------|-------------- eclair.server.port | TCP port | 9735 - eclair.http.port | HTTP port | 8080 + eclair.api.port | HTTP port | 8080 eclair.bitcoind.rpcuser | Bitcoin Core RPC user | foo eclair.bitcoind.rpcpassword | Bitcoin Core RPC password | bar @@ -77,14 +82,19 @@ option | description | default value ## JSON-RPC API - method | params | description - -------------|-------------------------------------|----------------------------------------------------------- - connect | host, port, anchor_amount | opens a channel with another eclair or lightningd instance - list | | lists existing channels - addhtlc | channel_id, amount, rhash, locktime | sends an htlc - fulfillhtlc | channel_id, r | fulfills an htlc - close | channel_id | closes a channel - help | | displays available methods + method | params | description + -------------|-----------------------------------------------|----------------------------------------------------------- + connect | host, port, pubkey | connect to another lightning node through a secure connection + open | host, port, pubkey, fundingSatoshis, pushMsat | opens a channel with another lightning node + peers | | list existing local peers + channels | | list existing local channels + channel | channelId | retrieve detailed information about a given channel + network | | list all nodes that have been announced + genh | | generate a payment H + send | amountMsat, paymentHash, nodeId | send a payment to a lightning node + close | channelId | close a channel + close | channelId, scriptPubKey (optional) | close a channel and send the funds to the given scriptPubKey + help | | display available methods ## Resources - [1] [The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments](https://lightning.network/lightning-network-paper.pdf) by Joseph Poon and Thaddeus Dryja