Nim implementation of the Ethereum Beacon Chain https://nimbus.guide
Go to file
Jacek Sieka 7ea51d5b0b
spec updates (#34)
* spec updates

* make several constants uint64 to help minimize casting
* document data type woes - will have to revisit these
* change comment style on fields and constants to make room for better
comments
* add BLSVerify and BLSAddPbkeys facades to insulate spec code from
milagro
* fix proof of possession type
* drop explicitly ordered container fields from ssz - there's an issue
open to sort this out before committing it to the spec
2018-12-11 11:55:45 -06:00
beacon_chain spec updates (#34) 2018-12-11 11:55:45 -06:00
benchmarks fix BLS12-381 comment 2018-11-08 11:55:24 +01:00
research rename variable, use conversion instead of cast 2018-08-08 10:37:27 +02:00
test_vectors_generator Reduce fromm 11K+ to 6k+ lines 2018-12-11 12:19:40 +01:00
tests spec updates (#34) 2018-12-11 11:55:45 -06:00
.appveyor.yml appveyor: fix version check 2018-09-06 11:56:42 -06:00
.gitignore initial commit 2018-07-20 15:46:03 +02:00
.travis.yml ci: update 2018-09-04 20:34:09 -06:00
LICENSE-APACHEv2 initial commit 2018-07-20 15:46:03 +02:00
LICENSE-MIT initial commit 2018-07-20 15:46:03 +02:00
README.md Update README.md 2018-12-02 11:11:12 +01:00
beacon_chain.nim Add the types used in the beacon chain 2018-07-20 20:18:56 +02:00
beacon_chain.nimble Some bits of randao 2018-12-09 11:17:54 +02:00
nim.cfg initial impl of fork choice rules. Main types sorted out 2018-09-03 18:42:22 +02:00

README.md

Ethereum Beacon Chain

Build Status (Travis) Windows build status (Appveyor) License: Apache License: MIT Stability: experimental

An alternative implementation of the Ethereum beacon chain in Nim.

Please see Full Beacon chain specs and the Ethereum Foundation reference implementation.

You can check where the beacon chain fits in the Ethereum research ecosystem in the Status Athenaeum.

Convention

Ethereum Foundation uses:

  • snake_case for fields and procedure names
  • MACRO_CASE for constants
  • PascalCase for types

Nim NEP-1 recommends:

  • camelCase for fields and procedure names
  • PascalCase for constants
  • PascalCase for types

To facilitate collaboration and comparison, Nim-beacon-chain uses the Ethereum Foundation convention.

Installation

You can install the developement version of the library through nimble with the following command

nimble install https://github.com/status-im/nim-beacon-chain@#master

License

Licensed and distributed under either of

at your option. This file may not be copied, modified, or distributed except according to those terms.