This was originally the EthereumJS VM repository. In Q1 2020 we brought some of its building blocks together to simplify development. Below you can find the packages included in this repository.
🚧 Please note that the master
branch is updated on a daily basis, and to inspect code related to a specific package version, refer to the tags.
Detailed version can be seen on Codecov.io
graph TD
vm{vm}
client{client}
ethash --> blockchain
devp2p --> client
block --> blockchain
block --> client
block --> vm
blockchain --> client
blockchain --> vm
trie --> client
trie --> vm
trie --> block
common --> block
common --> blockchain
common --> tx
common --> vm
common --> client
common --> devp2p
tx --> block
tx --> vm
vm --> client
To update the diagram above edit the README file and open a new PR with the changes.
See our monorepo documentation to get started on setting up the repository and installing dependencies. The config folder gives an overview on shared configuration and scripts between packages.
See our organizational documentation for an introduction to EthereumJS
as well as information on current standards and best practices.
If you want to join for work or do improvements on the libraries have a look at our contribution guidelines.
Most packages are MPL-2.0 licensed, see package folder for the respective license.