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. Screenshot from 2023-09-04 05-08-36 Screenshot from 2023-09-04 05-07-39 Screenshot from 2023-09-04 05-07-06

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.92-py3-none-any.whl (61.5 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for abstract_blockchain-0.0.0.92-py3-none-any.whl
Algorithm Hash digest
SHA256 58bc05b9884df206ac1a1e6fa201bd6569cc99bb8ad4b96f75e9a3e06ffbae1a
MD5 3fe003e0c14e84cd93615dbb3ecf7c0f
BLAKE2b-256 1c269124ca9bb8e1a8b96e9d914bd87c9e9cbaa404ded6428b3b10a1db6a7df2

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