Skip to content

Repository files navigation

SputnikVM: Rust Ethereum Virtual Machine Implementation

Build StatusLicense

NameDescriptionCrates.ioDocumentation
evmMain library that re-export most things.crates.ioDocumentation
evm-coreCore library defining the basic execution rules.crates.ioDocumentation
evm-gasometerIntegration of Ethereum gas rules.crates.ioDocumentation
evm-runtimeRuntime defining interface for block, transaction, and storage.crates.ioDocumentation

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.51.0 (2fd73fabe 2021-03-23). Rust 1.50.0 and before are not supported.

Documentation

Build from sources

SputnikVM is written in 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

About

Pure Rust implementation of Ethereum Virtual Machine

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages