Ethereum C++ Client.
By Gav Wood et al*, 2013, 2014, 2015.
Ethereum is based on a design in an original whitepaper by Vitalik Buterin. This implementation is based on the formal specification of a refinement of that idea detailed in the 'yellow paper' by Gavin Wood. Contributors, builders and testers include:
- arkpar (Arkadiy Paronyan) Mix, PV61/BlockQueue
- debris (Marek Kotewicz) JSONRPC, web3.js
- CJentzsch (Christoph Jentzsch) tests, lots of tests
- LefterisJP (Lefteris Karapetsas) Solidity, libethash
- chriseth (Christian Reitwiessner) Solidity
- subtly (Alex Leverington) libp2p, rlpx
- yann300 (Yann Levreau) Mix
- LianaHus (Liana Husikyan) Solidity
- chfast (Paweł Bylica) EVMJIT
- cubedro (Marian Oancea) web3.js
- gluk256 (Vlad Gluhovsky) Whisper
- programmerTim (Tim Hughes) libethash-cl
And let's not forget: Caktux (neth, ongoing CI), Eric Lombrozo (original MinGW32 cross-compilation), Marko Simovic (original CI).
See the Wiki for build instructions, compatibility information and build tips.
To run the tests, make sure you clone the tests repository from github.com/ethereum to tests as a sibling to cpp-ethereum.
Yet To Do
All new contributions are added under the MIT License. Please refer to the
LICENSE file in the root directory.
To state that you accept this fact for all of your contributions please add yourself to the list of external contributors like in the example below.
I hereby place all my contributions in this codebase under an MIT licence, as specified here.
- Name Surname (email@domain)
Please add yourself in the
@author doxygen section of the file your are adding/editing
with the same wording as the one you listed yourself in the external contributors section above,
only replacing the word contribution by file
All development goes in develop branch - please don't submit pull requests to master.
Please read CodingStandards.txt thoroughly before making alterations to the code base. Please do NOT use an editor that automatically reformats whitespace away from astylerc or the formatting guidelines as described in CodingStandards.txt.
libweb3jsonrpc/abstractwebthreestubserver.h is autogenerated from the jsonrpcstub executable that comes with the libjsonrpc library (json-rpc-cpp project). It shouldn't be maually altered.
jsonrpcstub spec.json --cpp-server=AbstractWebThreeStubServer