Python TVM emulator
Project Links
Meta
Author: Maksim Kurbatov
Requires Python: >=3.9
Classifiers
Programming Language
- Python :: 3.9
- Python :: 3.10
- Python :: 3.11
Topic
- Software Development :: Libraries
pytvm
:warning: 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 (
InternalandExternal) - 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:
-
Compile
emulatortarget TON Blockchain repo or downloadlibemulatorbinaries from latest release. -
Install pytvm from source:
pip install pytvm
-
Create engine providing path to
libemulatorbinaries toEmulatorEngineC:
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
0.0.15
Feb 20, 2025
0.0.14
Aug 25, 2024
0.0.13
May 10, 2024
0.0.12
Apr 15, 2024
0.0.11
Mar 06, 2024
0.0.10
Mar 02, 2024
0.0.9
Feb 28, 2024
0.0.5
Feb 28, 2024
0.0.4
Feb 28, 2024
0.0.3
Feb 28, 2024
0.0.2
Feb 28, 2024
0.0.1
Feb 27, 2024
Wheel compatibility matrix
Files in release
Extras:
None
Dependencies:
pytoniq-core
(>=0.1.31)