1
0
mirror of https://github.com/ACINQ/eclair.git synced 2024-11-19 09:54:02 +01:00
eclair/README.md
Pierre-Marie Padiou d3766ec46b Update README.md
2016-02-24 11:44:14 +01:00

2.8 KiB

Build Status

eclair

A scala implementation of the Lightning Network. Eclair is french for Lightning.

More precisely, this is an implementation of Rusty's deployable lightning. In particular it uses the same wire protocol, and almost the same state machine.

Overview

The general idea is to have an actor per channel, everything being non-blocking.

A "blockchain watcher" is responsible for monitoring the blockchain, and sending events (eg. when the anchor is spent).

Modules

  • lightning-types: scala code generation using protobuf's compiler (wire protocol)
  • eclair-demo: actual implementation

Usage

Prerequisites:

  • A JRE or JDK depending on wether you want to compile yourself or not (preferably > 1.8)
  • A running bitcoin-core (testnet or regtest)

⚠️ eclair demo currently runs on testnet or regtest only. Do not try and modify it to run on bitcoin mainnet!

Either run from source:

mvn exec:java -Dexec.mainClass=fr.acinq.eclair.Boot

Or grab the latest released jar and run:

java -jar eclair-demo_2.11-*-capsule-fat.jar

See TESTING.md for more details on how to use this software.

Available jvm options (see application.conf for full reference):

eclair.server.port (default: 45000)
eclair.http.port (default: 8080)
eclair.bitcoind.rpcuser (default: foo)
eclair.bitcoind.rpcpassword (default: bar)

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

Status

  • Network
  • Routing
  • Channel state machine
  • HTLC Scripts
  • Unilateral close handling
  • Relaying Payment
  • Fee management
  • Blockchain watcher
  • Storing states in a database

Ressources