pytvm


Namepytvm JSON
Version 0.0.15 PyPI version JSON
download
home_pagehttps://github.com/yungwine/pytvm
SummaryPython TVM emulator
upload_time2025-02-20 15:12:23
maintainerNone
docs_urlNone
authorMaksim Kurbatov
requires_python>=3.9
licenseNone
keywords
VCS
bugtrack_url
requirements pytoniq_core
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pytvm

[![PyPI version](https://badge.fury.io/py/pytvm.svg)](https://badge.fury.io/py/pytvm) 
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pytvm)](https://pypi.org/project/pytvm/)
[![Downloads](https://static.pepy.tech/badge/pytvm)](https://pepy.tech/project/pytvm)
[![Downloads](https://static.pepy.tech/badge/pytvm/month)](https://pepy.tech/project/pytvm)
[![](https://img.shields.io/badge/%F0%9F%92%8E-TON-grey)](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[![PyPI version](https://badge.fury.io/py/pytvm.svg)](https://badge.fury.io/py/pytvm) \n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pytvm)](https://pypi.org/project/pytvm/)\n[![Downloads](https://static.pepy.tech/badge/pytvm)](https://pepy.tech/project/pytvm)\n[![Downloads](https://static.pepy.tech/badge/pytvm/month)](https://pepy.tech/project/pytvm)\n[![](https://img.shields.io/badge/%F0%9F%92%8E-TON-grey)](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"
}
        
Elapsed time: 0.41147s