goat-sdk-wallet-web3


Namegoat-sdk-wallet-web3 JSON
Version 0.1.3 PyPI version JSON
download
home_pagehttps://ohmygoat.dev/
SummaryGoat SDK Web3 wallet implementation
upload_time2025-02-04 18:25:35
maintainerNone
docs_urlNone
authorAndrea Villa
requires_python<4.0,>=3.10
licenseNone
keywords goat sdk web3 agents ai evm wallet
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Web3 Wallet for GOAT SDK

A Python implementation of a Web3 wallet for the GOAT SDK, providing enhanced Ethereum and EVM-compatible chain support through web3.py integration.

## Installation

```bash
poetry add goat-sdk-wallet-web3

# Required dependency
poetry add goat-sdk-wallet-evm
```

## Usage

```python
from goat_wallets.web3 import web3_wallet

# Initialize wallet with private key
wallet = web3_wallet(
    private_key="${WALLET_PRIVATE_KEY}",  # Your EVM wallet private key
    rpc_url="${RPC_PROVIDER_URL}"  # Your EVM RPC endpoint
)

# Get wallet address
address = wallet.get_address()

# Get native token balance
balance = await wallet.get_balance()

# Send transaction
tx_hash = await wallet.send_transaction({
    "to": "recipient_address",
    "value": "1000000000000000000",  # 1 ETH in wei
    "data": "0x",  # Optional contract data
    "gas": 21000,  # Optional gas limit
    "maxFeePerGas": "50000000000"  # Optional max fee per gas (50 gwei)
})

# Call contract method
result = await wallet.call_contract(
    contract_address="contract_address",
    function_name="balanceOf",
    args=["token_holder_address"]
)
```

## Features

- Web3.py Integration:
  - Full web3.py functionality
  - Enhanced contract interactions
  - ABI handling
  - Gas estimation
  
- Transaction Management:
  - EIP-1559 support
  - Legacy transaction support
  - Contract deployment
  - Method encoding/decoding
  
- Smart Contract Features:
  - Contract interaction
  - Event listening
  - Function calling
  - State queries
  
- Network Support:
  - Ethereum
  - Polygon
  - Arbitrum
  - Optimism
  - Base
  - BNB Chain
  - All EVM-compatible chains

## License

This project is licensed under the terms of the MIT license.

            

Raw data

            {
    "_id": null,
    "home_page": "https://ohmygoat.dev/",
    "name": "goat-sdk-wallet-web3",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.10",
    "maintainer_email": null,
    "keywords": "goat, sdk, web3, agents, ai, evm, wallet",
    "author": "Andrea Villa",
    "author_email": "andreakarimodm@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/e0/10/ef70892109f9aa63881798ff83a144162f7ecfdebb4c07515e57bc7d86e6/goat_sdk_wallet_web3-0.1.3.tar.gz",
    "platform": null,
    "description": "# Web3 Wallet for GOAT SDK\n\nA Python implementation of a Web3 wallet for the GOAT SDK, providing enhanced Ethereum and EVM-compatible chain support through web3.py integration.\n\n## Installation\n\n```bash\npoetry add goat-sdk-wallet-web3\n\n# Required dependency\npoetry add goat-sdk-wallet-evm\n```\n\n## Usage\n\n```python\nfrom goat_wallets.web3 import web3_wallet\n\n# Initialize wallet with private key\nwallet = web3_wallet(\n    private_key=\"${WALLET_PRIVATE_KEY}\",  # Your EVM wallet private key\n    rpc_url=\"${RPC_PROVIDER_URL}\"  # Your EVM RPC endpoint\n)\n\n# Get wallet address\naddress = wallet.get_address()\n\n# Get native token balance\nbalance = await wallet.get_balance()\n\n# Send transaction\ntx_hash = await wallet.send_transaction({\n    \"to\": \"recipient_address\",\n    \"value\": \"1000000000000000000\",  # 1 ETH in wei\n    \"data\": \"0x\",  # Optional contract data\n    \"gas\": 21000,  # Optional gas limit\n    \"maxFeePerGas\": \"50000000000\"  # Optional max fee per gas (50 gwei)\n})\n\n# Call contract method\nresult = await wallet.call_contract(\n    contract_address=\"contract_address\",\n    function_name=\"balanceOf\",\n    args=[\"token_holder_address\"]\n)\n```\n\n## Features\n\n- Web3.py Integration:\n  - Full web3.py functionality\n  - Enhanced contract interactions\n  - ABI handling\n  - Gas estimation\n  \n- Transaction Management:\n  - EIP-1559 support\n  - Legacy transaction support\n  - Contract deployment\n  - Method encoding/decoding\n  \n- Smart Contract Features:\n  - Contract interaction\n  - Event listening\n  - Function calling\n  - State queries\n  \n- Network Support:\n  - Ethereum\n  - Polygon\n  - Arbitrum\n  - Optimism\n  - Base\n  - BNB Chain\n  - All EVM-compatible chains\n\n## License\n\nThis project is licensed under the terms of the MIT license.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Goat SDK Web3 wallet implementation",
    "version": "0.1.3",
    "project_urls": {
        "Bug Tracker": "https://github.com/goat-sdk/goat/issues",
        "Homepage": "https://ohmygoat.dev/",
        "Repository": "https://github.com/goat-sdk/goat"
    },
    "split_keywords": [
        "goat",
        " sdk",
        " web3",
        " agents",
        " ai",
        " evm",
        " wallet"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7bb13f3291572bf7433a5d9d952fd44a638e32f61aed70d9c66d02c77453e7cd",
                "md5": "6966bcb9f42b157b3ae11a8b6042b82c",
                "sha256": "8f0cdca285ea0125defe17eb70e323a1a20b9df7c02f483136239a0edc182034"
            },
            "downloads": -1,
            "filename": "goat_sdk_wallet_web3-0.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6966bcb9f42b157b3ae11a8b6042b82c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.10",
            "size": 4406,
            "upload_time": "2025-02-04T18:25:33",
            "upload_time_iso_8601": "2025-02-04T18:25:33.620052Z",
            "url": "https://files.pythonhosted.org/packages/7b/b1/3f3291572bf7433a5d9d952fd44a638e32f61aed70d9c66d02c77453e7cd/goat_sdk_wallet_web3-0.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e010ef70892109f9aa63881798ff83a144162f7ecfdebb4c07515e57bc7d86e6",
                "md5": "358e046e9ca687ad705c13c10f146f54",
                "sha256": "64dbb33efa5a827140303bcd9891b6871d774ae2165183847fe75896a58954a0"
            },
            "downloads": -1,
            "filename": "goat_sdk_wallet_web3-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "358e046e9ca687ad705c13c10f146f54",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.10",
            "size": 4114,
            "upload_time": "2025-02-04T18:25:35",
            "upload_time_iso_8601": "2025-02-04T18:25:35.519252Z",
            "url": "https://files.pythonhosted.org/packages/e0/10/ef70892109f9aa63881798ff83a144162f7ecfdebb4c07515e57bc7d86e6/goat_sdk_wallet_web3-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-04 18:25:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "goat-sdk",
    "github_project": "goat",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "goat-sdk-wallet-web3"
}
        
Elapsed time: 0.49169s