evm-gasometer

Portable Ethereum Virtual Machine implementation written in pure Rust.


Keywords
no_std, ethereum
License
Apache-2.0

Documentation

SputnikVM: Rust Ethereum Virtual Machine Implementation

Build Status License

Name Description Crates.io Documentation
evm Main library that re-export most things. crates.io Documentation
evm-core Core library defining the basic execution rules. crates.io Documentation
evm-gasometer Integration of Ethereum gas rules. crates.io Documentation
evm-runtime Runtime defining interface for block, transaction, and storage. crates.io Documentation

Features

  • Standalone - can be launched as an independent process or integrated into other apps
  • Universal - supports different Ethereum chains, such as ETC, ETH or private ones
  • Stateless - only an execution environment connected to independent State storage
  • Fast - main focus is on performance
  • written in Rust, can be used as a binary, cargo crate or shared library

Dependencies

Ensure you have at least rustc 1.33.0 (2aa4c46cf 2019-02-28). Rust 1.32.0 and before is not supported.

Documentation

Build from sources

SputnikVM is written Rust. If you are not familiar with Rust please see the getting started guide.

Build

To start working with SputnikVM you'll need to install rustup, then you can do:

$ git clone git@github.com:sorpaas/rust-evm.git
$ cd rust-evm
$ cargo build --release --all

License

Apache 2.0