lighthouse/docs
Luke Anderson b9276da9db
Flesh spec. & update display bugs.
- Add correct string formatting when incorrect parameters provided.
 - Fill /beacon/block and /beacon/block_root endpoints
 - Add 500 error responses to endpoints as appropriate
2019-08-29 13:36:51 +10:00
..
config_examples Fix block processing blowup, upgrade metrics (#500) 2019-08-19 21:02:34 +10:00
api_spec.yaml Flesh spec. & update display bugs. 2019-08-29 13:36:51 +10:00
documentation.md Added a quick 'documentation.md' file, to describe where the Lighthouse technical documentation is, and how it can be updated. 2019-05-01 15:13:30 +10:00
env.md Update env.md (#506) 2019-08-27 12:19:17 +10:00
interop.md Interop chain start strategies (#479) 2019-08-06 13:29:27 +10:00
README.md Interop chain start strategies (#479) 2019-08-06 13:29:27 +10:00
serenity.md Revert "Merge pull request #200 from sigp/new-structure" 2019-02-14 12:09:18 +11:00

Lighthouse Documentation

Lighthouse is a work-in-progress. Instructions are provided for running the client, however these instructions are designed for developers and researchers working on the project. We do not (yet) provide user-facing functionality.

Introduction

For client implementers looking to inter-op, see the Inter-Op Docs.

Command-line Interface

With the development environment configured, run cargo build --all --release (this can take several minutes on the first build). Then, navigate to the target/release/ directory and read the CLI documentation using:

$ ./beacon_node -h

The main README.md provides instructions for running a small, local testnet.

REST API

The beacon node provides a RESTful HTTP API which serves information about the Beacon Chain, the P2P network and more.

This API is documented in the rest_oapi.yaml Swagger YAML file. There's an interactive version hosted on SwaggerHub.

The implementation of the Swagger API in Lighthouse is incomplete, we do not (yet) guarantee that all routes are implemented.

Configuration Files

Lighthouse uses TOML files for configuration. The following binaries use the following config files (they are generated from defaults if they don't already exist):

  • Beacon Node
    • ~/.lighthouse/beacon_node.toml: the primary configuration file for a beacon node.
    • ~/.lighthouse/eth2-spec.toml: defines chain-specific "constants" that define an Ethereum 2.0 network.
  • Validator Client
    • ~/.lighthouse/validator_client.toml: the primary configuration file for a validator client.
    • ~/.lighthouse/eth2-spec.toml: defines chain-specific "constants" that define an Ethereum 2.0 network.

Note: default directories are shown, CLI flags can be used to override these defaults.

beacon-node.toml

A TOML configuration file that defines the behaviour of the beacon node runtime.

  • Located in the datadir (default ~/.lighthouse) as beacon-node.toml.
  • Created from defaults if not present.

See the example for more information.