Skip to main content

The Abstract Blockchain package provides a collection of modules designed to simplify interaction with blockchain networks, smart contracts, and related components. It offers tools for managing RPC parameters, working with smart contract ABIs, and facilitating user-friendly interactions through graphical user interfaces (GUIs).

Project description


Abstract Blockchain Package

The Abstract Blockchain package provides a collection of modules designed to simplify interaction with blockchain networks, smart contracts, and related components. It offers tools for managing RPC parameters, working with smart contract ABIs, and facilitating user-friendly interactions through graphical user interfaces (GUIs).

Modules

abstract_abis.py

This module provides the ABIBridge class, which serves as an interface to Ethereum smart contract ABIs. It allows you to interact with contract functions, retrieve read-only functions, get required input details, and call contract functions using a convenient interface. Additionally, it provides methods for fetching and categorizing RPC parameters for blockchain interaction.

abstract_apis.py

This module offers the RPCData class that handles the management of RPC parameters for blockchain networks. It enables users to filter and select RPC parameters through a graphical user interface (GUI). The class also categorizes and organizes RPC parameters for ease of use in blockchain interactions.

abstract_rpcs.py

This module provides utilities for working with blockchain RPC parameters. It includes functions to filter and categorize RPC parameters, organize them into sub-lists based on keys, and create a GUI for users to choose specific RPC parameters for blockchain interactions.

abstract_utilities

This submodule contains utility functions used across the package for tasks such as working with JSON data, managing lists, and GUI components.

abstract_gui

This submodule provides utilities for creating graphical user interfaces (GUIs) that enhance user interaction with blockchain-related features. It offers functions for creating windows, buttons, menus, and more, streamlining the process of building user-friendly interfaces.

Example Usage

from abstract_abis import ABIBridge
from abstract_apis import Choose_RPC_Parameters_GUI, RPCData

# Example usage of ABIBridge
abi_manager = ABIBridge(contract_address='0x3dCCeAE634f371E779c894A1cEa43a09C23af8d5', rpc=default_rpc())
read_only_functions = abi_manager.get_read_only_functions()
for each in read_only_functions:
    inputs = abi_manager.get_required_inputs(each)
    if len(inputs) == 0:
        result = abi_manager.call_function(each)
        print(each, result)
    else:
        print(each, inputs)

# Example usage of RPCData and GUI
rpc_data = Choose_RPC_Parameters_GUI()
rpc_manager = RPCData(rpc_data)
w3 = rpc_manager.w3

# Your blockchain interactions using w3...

Installation

The abstract_blockchain package can be installed using pip:

pip install abstract_blockchain

License

This package is released under the MIT License.


Project details


Release history Release notifications | RSS feed

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

abstract_blockchain-0.0.0.75-py3-none-any.whl (60.4 kB view details)

Uploaded Python 3

File details

Details for the file abstract_blockchain-0.0.0.75-py3-none-any.whl.

File metadata

File hashes

Hashes for abstract_blockchain-0.0.0.75-py3-none-any.whl
Algorithm Hash digest
SHA256 fc262205eb0a6b29b49333fb23182afc5e4271be9262833b07eb5d5cb73af7e1
MD5 3fdf7568dd7ef16106b970d2d5416806
BLAKE2b-256 463e9e038ca914ef495e095aaf82161673443a8d9f05e98299597eb37c31e851

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