Python TVM emulator


Keywords
emulator, ton, tvm
Install
pip install pytvm==0.0.13

Documentation

pytvm

PyPI version PyPI - Python Version Downloads Downloads

⚠️ WARNING: The pytvm library is currently in active development. Features and functionality may change frequently. Please keep this in mind when using this library.

pytvm - is a Python bindings to C++ TON Virtual Machine (TVM) emulator. pytvm allows you:

  • Run Get-Methods locally (for trustless and fast data retrieval)
  • Emulate messages (Internal and External)
  • Emulate transactions
  • Emulate transactions traces

Usage

Find examples in the examples folder.

Installation

From PyPi

pip install pytvm 

From source

Currently, pytvm compatible with Python3.9 - Python3.11 on platforms:

  • Linux (x86_64)
  • Windows (x86_64)
  • MacOS (x86_64, arm64)

If your system is not compatible with the pre-built wheels, you can install pytvm from source:

  1. Compile emulator target TON Blockchain repo or download libemulator binaries from latest release.

  2. Install pytvm from source:

    pip install pytvm
    
  3. Create engine providing path to libemulator binaries to EmulatorEngineC:

from pytvm.engine import EmulatorEngineC
from pytvm.transaction_emulator import TransactionEmulator
engine = EmulatorEngineC('path/to/libemulator.so')
emulator = TransactionEmulator(engine=engine)

Donation

TON wallet: EQBvW8Z5huBkMJYdnfAEM5JqTNkuWX3diqYENkWsIL0XggGG