Gavin Wood's C++ implementation of the Ethereum yellowpaper.
C++ JavaScript C QML CMake Objective-C Other
Pull request Compare This branch is 21722 commits behind ethereum:develop.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
abi
alethzero
cmake
doc
docker
eth
ethconsole
ethkey
ethminer
ethrpctest
ethvm
evmjit
exp
extdep
json_spirit
libdevcore
libdevcrypto
libethash-cl
libethash
libethcore
libethereum
libethereumx
libevm
libevmasm
libevmcore
libjsconsole
libjsengine
libjsqrc
liblll
libnatspec
libp2p
libscrypt
libserpent
libsolidity
libtestutils
libweb3jsonrpc
libwebthree
libwhisper
lllc
mix
pysol
rlp
sc
secp256k1
solc
test
third
.gitignore
.gitmodules
BuildInfo.h.in
CMakeLists.txt
CodingStandards.txt
EthereumMacOSXBundleInfo.plist.in
LICENSE
README.md
appdmg.json.in
astylerc
getcoverage.sh
include.lll
install-folder-bg.png
install-folder-bg@2x.png
macdeployfix.sh
merge.sh
mergeMaster.sh
package.sh
pullSerpent.sh
pullSubtree.sh
qtcreator-style.xml
sanitizer-blacklist.txt
standard.js
stdserv.js

README.md

Ethereum C++ Client.

Join the chat at https://gitter.im/ethereum/cpp-ethereum

By Gav Wood et al*, 2013, 2014, 2015.

      | Linux   | OSX | Windows

----------|---------|-----|-------- develop | Build+Status | Build+Status | Build+Status master | Build+Status | Build+Status | Build+Status evmjit | Build+Status | Build+Status | N/A

Stories in Ready

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
  • gluk250 (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).

Building

See the Wiki for build instructions, compatibility information and build tips.

Testing

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

See TODO

License

See LICENSE

Contributing

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