5 releases

0.4.1 Jun 24, 2024
0.4.0 Jun 21, 2024
0.3.2 Apr 19, 2024
0.3.1 Apr 12, 2024
0.3.0 Apr 12, 2024

#7 in #waves

Download history 56/week @ 2024-07-28 17/week @ 2024-09-15 2/week @ 2024-09-22 17/week @ 2024-09-29

367 downloads per month
Used in we-cdk

MIT license

135KB
3.5K SLoC

wevm

crates.io

Waves Enterprise Virtual Machine for WASM smart-contracts

WEVM represents:

  • WebAssembly interpreter (Wasm)
  • Functions for working with Node
  • Interface for interaction with Node
  • A mechanism for controlling the execution of smart contracts

WEVM uses:

  • Crate wasmi is used as the WebAssembly interpreter
  • Java Native Interface (JNI) and crate jni are used as a way for WEVM to communicate with Waves Enterprise Node

Development

At the root is the implementation of a Scala interface for integration into Waves Enterprise Node. In the native folder there is an implementation of WEVM in Rust language.

Run WEVM test

cargo test --features jvm

Run Scala test

sbt buildWAT
sbt test

Dependencies

~0.2–12MB
~83K SLoC