Skip to main content

GenLayer Python SDK

Project description

GenLayerPY

License: MIT Discord Twitter

About

GenLayerPY SDK is a python library designed for developers building decentralized applications (Dapps) on the GenLayer protocol. This SDK provides a comprehensive set of tools to interact with the GenLayer network, including client creation, transaction handling, event subscriptions, and more, all while leveraging the power of web3.py as the underlying blockchain client.

Prerequisites

Before installing GenLayerPY SDK, ensure you have the following prerequisites installed:

  • Python (>=3.8)

🛠️ Installation and Usage

To install the GenLayerPY SDK, use the following command:

$ pip install genlayer-py

Here’s how to initialize the client and connect to the GenLayer Simulator:

Reading a Transaction

from genlayer_py import create_client
from genlayer_py.chains import localnet

client = create_client(
    chain=localnet,
)

transaction_hash = "0x..."

transaction = client.get_transaction(hash=transaction_hash)

Reading a contract

from genlayer_py import create_client
from genlayer_py.chains import localnet

client = create_client(
    chain=localnet,
)

result = client.read_contract(
    address=contract_address,
    function_name='get_complete_storage',
    args=[],
    state_status='accepted'
)

Writing a transaction

from genlayer_py.chains import localnet
from genlayer_py import create_client, create_account

client = create_client(
    chain=localnet,
)

account = create_account()

transaction_hash = client.write_contract(
    account=account,
    transaction=transaction,
    address=contract_address,
    function_name='account',
    args=['new_storage'],
    value=0, // value is optional, if you want to send some native token to the contract
)
receipt = client.wait_for_transaction_receipt(
    hash=transaction_hash,
    status=TransactionStatus.FINALIZED // or ACCEPTED
)

🚀 Key Features

  • Client Creation: Easily create and configure a client to connect to GenLayer’s network.
  • Transaction Handling: Send and manage transactions on the GenLayer network.
  • Gas Estimation*: Estimate gas fees for executing transactions on GenLayer.

* under development

📖 Documentation

For detailed information on how to use GenLayerPY SDK, please refer to our documentation.

Contributing

We welcome contributions to GenLayerPY SDK! Whether it's new features, improved infrastructure, or better documentation, your input is valuable. Please read our CONTRIBUTING guide for guidelines on how to submit your contributions.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

genlayer_py-0.1.0b2.tar.gz (14.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

genlayer_py-0.1.0b2-py3-none-any.whl (20.5 kB view details)

Uploaded Python 3

File details

Details for the file genlayer_py-0.1.0b2.tar.gz.

File metadata

  • Download URL: genlayer_py-0.1.0b2.tar.gz
  • Upload date:
  • Size: 14.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for genlayer_py-0.1.0b2.tar.gz
Algorithm Hash digest
SHA256 3638cfeb1f9d1bb3211169ada2b5fceedeaf06eb6b959c1f1e82020307d94944
MD5 acd9bb2554fdbf3e9ad9c35e11f4294e
BLAKE2b-256 a8812048cd213dd0f6ab231d47cb66e7bcccbe9e0af2491685d40e124ff4f90c

See more details on using hashes here.

File details

Details for the file genlayer_py-0.1.0b2-py3-none-any.whl.

File metadata

  • Download URL: genlayer_py-0.1.0b2-py3-none-any.whl
  • Upload date:
  • Size: 20.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for genlayer_py-0.1.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 90214f1dc10b322401d526a519858acfccf3ae639001bc6339e8332a20491081
MD5 b681af11ddc712df3e9f02ed6c26c8a5
BLAKE2b-256 66b97497c88d48d923ea730ed854be100072e36adb0b5a94c0df5a0c7e90da5a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page