## Ethereum C++ Client.
[](https://gitter.im/ethereum/cpp-ethereum?utm_source=badge& utm_medium=badge& utm_campaign=pr-badge& utm_content=badge)
By Gav Wood et al*, 2013, 2014, 2015.
| Linux | OSX | Windows
----------|---------|-----|--------
develop | [](https://build.ethdev.com/builders/Linux%20C%2B%2B%20develop%20branch/builds/-1) | [](https://build.ethdev.com/builders/OSX%20C%2B%2B%20develop%20branch/builds/-1) | [](https://build.ethdev.com/builders/Windows%20C%2B%2B%20develop%20branch/builds/-1)
master | [](https://build.ethdev.com/builders/Linux%20C%2B%2B%20master%20branch/builds/-1) | [](https://build.ethdev.com/builders/OSX%20C%2B%2B%20master%20branch/builds/-1) | [](https://build.ethdev.com/builders/Windows%20C%2B%2B%20master%20branch/builds/-1)
evmjit | [](https://build.ethdev.com/builders/Linux%20C%2B%2B%20develop%20evmjit/builds/-1) | [](https://build.ethdev.com/builders/OSX%20C%2B%2B%20develop%20evmjit/builds/-1) | N/A
[](http://waffle.io/ethereum/cpp-ethereum)
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 ](https://github.com/ethereum/cpp-ethereum/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 ](https://github.com/ethereum/cpp-ethereum/wiki/TODO )
### License
See [LICENSE ](LICENSE )
### Contributing
All development goes in develop branch - please don't submit pull requests to master.
Please read [CodingStandards.txt ](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 ](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.
```bash
jsonrpcstub spec.json --cpp-server=AbstractWebThreeStubServer
```