# pytvm
[](https://badge.fury.io/py/pytvm)
[](https://pypi.org/project/pytvm/)
[](https://pepy.tech/project/pytvm)
[](https://pepy.tech/project/pytvm)
[](https://ton.org)
> :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 (`Internal` and `External`)
* Emulate transactions
* Emulate transactions traces
## Usage
Find examples in the [examples](examples/) folder.
## Installation
### From PyPi
```commandline
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](https://github.com/ton-blockchain/ton) or download `libemulator` binaries from
[latest release](https://github.com/ton-blockchain/ton/releases/latest).
2) Install **pytvm** from source:
```commandline
pip install pytvm
```
3) Create engine providing path to `libemulator` binaries to `EmulatorEngineC`:
```python
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`
Raw data
{
"_id": null,
"home_page": "https://github.com/yungwine/pytvm",
"name": "pytvm",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Maksim Kurbatov",
"author_email": "cyrbatoff@gmail.com",
"download_url": null,
"platform": null,
"description": "# pytvm\n\n[](https://badge.fury.io/py/pytvm) \n[](https://pypi.org/project/pytvm/)\n[](https://pepy.tech/project/pytvm)\n[](https://pepy.tech/project/pytvm)\n[](https://ton.org)\n\n> :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.**\n\n**pytvm** - is a Python bindings to C++ TON Virtual Machine (TVM) emulator. **pytvm** allows you:\n\n* Run Get-Methods locally (for trustless and fast data retrieval)\n* Emulate messages (`Internal` and `External`)\n* Emulate transactions\n* Emulate transactions traces\n\n## Usage\n\nFind examples in the [examples](examples/) folder.\n\n## Installation\n\n### From PyPi\n\n```commandline\npip install pytvm \n```\n\n### From source\nCurrently, **pytvm** compatible with Python3.9 - Python3.11 on platforms:\n* Linux (x86_64)\n* Windows (x86_64)\n* MacOS (x86_64, arm64)\n\nIf your system is not compatible with the pre-built wheels, you can install **pytvm** from source:\n\n1) Compile `emulator` target TON Blockchain [repo](https://github.com/ton-blockchain/ton) or download `libemulator` binaries from\n[latest release](https://github.com/ton-blockchain/ton/releases/latest).\n2) Install **pytvm** from source:\n\n ```commandline\n pip install pytvm\n ```\n\n3) Create engine providing path to `libemulator` binaries to `EmulatorEngineC`:\n\n```python\nfrom pytvm.engine import EmulatorEngineC\nfrom pytvm.transaction_emulator import TransactionEmulator\nengine = EmulatorEngineC('path/to/libemulator.so')\nemulator = TransactionEmulator(engine=engine)\n```\n\n## Donation\n\nTON wallet: `EQBvW8Z5huBkMJYdnfAEM5JqTNkuWX3diqYENkWsIL0XggGG`\n",
"bugtrack_url": null,
"license": null,
"summary": "Python TVM emulator",
"version": "0.0.15",
"project_urls": {
"Homepage": "https://github.com/yungwine/pytvm"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2d7e152e6cec7290269f3d92337271bb8afa88ad7358a02ec23802d7ee65ebaf",
"md5": "c3b39801fd2d547b7786b9039eef3393",
"sha256": "62bd754332e55d21a74e9b6f5381af6ed5be04c196051ee62f2e5c00a53b1b8e"
},
"downloads": -1,
"filename": "pytvm-0.0.15-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "c3b39801fd2d547b7786b9039eef3393",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 2902835,
"upload_time": "2025-02-20T15:12:23",
"upload_time_iso_8601": "2025-02-20T15:12:23.346768Z",
"url": "https://files.pythonhosted.org/packages/2d/7e/152e6cec7290269f3d92337271bb8afa88ad7358a02ec23802d7ee65ebaf/pytvm-0.0.15-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-20 15:12:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "yungwine",
"github_project": "pytvm",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "pytoniq_core",
"specs": [
[
">=",
"0.1.30"
]
]
}
],
"lcname": "pytvm"
}