evm-decoder


Nameevm-decoder JSON
Version 0.1.6 PyPI version JSON
download
home_pagehttps://github.com/gmatrixuniverse/evm-decoder
SummaryA package for decoding and analyzing EVM transactions and logs
upload_time2024-10-21 07:15:27
maintainerNone
docs_urlNone
authorgmatrixuniverse
requires_python>=3.7
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # EVM Decoder

EVM Decoder is a Python package for decoding and analyzing Ethereum Virtual Machine (EVM) transactions and logs. It provides tools to help developers and researchers understand and work with EVM-based blockchain data.

## Features

- Decode EVM transaction input data
- Decode EVM event logs
- Analyze balance changes in transactions
- Support for custom ABI and fixed types
- Retrieve chain information for various EVM-compatible networks

## Installation

You can install the EVM Decoder package using pip:
```
bash
pip install evm-decoder
```


## Usage

Here's a quick example of how to use EVM Decoder:

python
from evm_decoder import DecoderManager, AnalyzerManager
Initialize managers
decoder_manager = DecoderManager()
analyzer_manager = AnalyzerManager()
Example transaction data
transaction_data = {
'input': '0x23b872dd000000000000000000000000...',
'from': '0xb8faa80fe04a4afd30c89f40e4fcdc6dafb274d9',
'to': '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',
'value': '0',
'chain_id': 1,
'logs': [...]
}
Decode the transaction
decode_result = decoder_manager.decode(transaction_data)
print("Transaction decode result:", decode_result)
Analyze the transaction
analysis_result = analyzer_manager.analyze_transaction(transaction_data, {})
print("Transaction analysis result:", analysis_result)


For more detailed examples, check the `examples` directory in the repository.

## Configuration

EVM Decoder uses a configuration file to set up decoders. You can customize this file to add support for specific contracts or event types. The default configuration file is located at `evm_decoder/config/decoder_config.json`.

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Acknowledgments

- Thanks to all contributors who have helped to improve this project.
- This project makes use of several open-source libraries, including Web3.py and eth-abi.

## Contact

If you have any questions or feedback, please open an issue on the GitHub repository.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/gmatrixuniverse/evm-decoder",
    "name": "evm-decoder",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": null,
    "author": "gmatrixuniverse",
    "author_email": "gmatrixuniverse@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/d7/4f/3f8328b4568b5a046dea0f6b8a623b90be04343ef8ba7c7aac49e513e8d5/evm_decoder-0.1.6.tar.gz",
    "platform": null,
    "description": "# EVM Decoder\n\nEVM Decoder is a Python package for decoding and analyzing Ethereum Virtual Machine (EVM) transactions and logs. It provides tools to help developers and researchers understand and work with EVM-based blockchain data.\n\n## Features\n\n- Decode EVM transaction input data\n- Decode EVM event logs\n- Analyze balance changes in transactions\n- Support for custom ABI and fixed types\n- Retrieve chain information for various EVM-compatible networks\n\n## Installation\n\nYou can install the EVM Decoder package using pip:\n```\nbash\npip install evm-decoder\n```\n\n\n## Usage\n\nHere's a quick example of how to use EVM Decoder:\n\npython\nfrom evm_decoder import DecoderManager, AnalyzerManager\nInitialize managers\ndecoder_manager = DecoderManager()\nanalyzer_manager = AnalyzerManager()\nExample transaction data\ntransaction_data = {\n'input': '0x23b872dd000000000000000000000000...',\n'from': '0xb8faa80fe04a4afd30c89f40e4fcdc6dafb274d9',\n'to': '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n'value': '0',\n'chain_id': 1,\n'logs': [...]\n}\nDecode the transaction\ndecode_result = decoder_manager.decode(transaction_data)\nprint(\"Transaction decode result:\", decode_result)\nAnalyze the transaction\nanalysis_result = analyzer_manager.analyze_transaction(transaction_data, {})\nprint(\"Transaction analysis result:\", analysis_result)\n\n\nFor more detailed examples, check the `examples` directory in the repository.\n\n## Configuration\n\nEVM Decoder uses a configuration file to set up decoders. You can customize this file to add support for specific contracts or event types. The default configuration file is located at `evm_decoder/config/decoder_config.json`.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- Thanks to all contributors who have helped to improve this project.\n- This project makes use of several open-source libraries, including Web3.py and eth-abi.\n\n## Contact\n\nIf you have any questions or feedback, please open an issue on the GitHub repository.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A package for decoding and analyzing EVM transactions and logs",
    "version": "0.1.6",
    "project_urls": {
        "Homepage": "https://github.com/gmatrixuniverse/evm-decoder"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5228d3bdc00b019b3acbe1544566983bf61b16c0721cb06c4f68e4bb9ba990da",
                "md5": "4300e82a819896422eb82989462c31d7",
                "sha256": "9335a567b63c13c18c33493e260f266ffa47f0dc16f26345c82e7ba36078db6a"
            },
            "downloads": -1,
            "filename": "evm_decoder-0.1.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4300e82a819896422eb82989462c31d7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 15145,
            "upload_time": "2024-10-21T07:15:25",
            "upload_time_iso_8601": "2024-10-21T07:15:25.981011Z",
            "url": "https://files.pythonhosted.org/packages/52/28/d3bdc00b019b3acbe1544566983bf61b16c0721cb06c4f68e4bb9ba990da/evm_decoder-0.1.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d74f3f8328b4568b5a046dea0f6b8a623b90be04343ef8ba7c7aac49e513e8d5",
                "md5": "3f15c98449a7427cf504a0ee623e3b4c",
                "sha256": "ea140faec27039fd5e06df5b0de72341611603b433e55676bbcf940cbe428ad2"
            },
            "downloads": -1,
            "filename": "evm_decoder-0.1.6.tar.gz",
            "has_sig": false,
            "md5_digest": "3f15c98449a7427cf504a0ee623e3b4c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 13121,
            "upload_time": "2024-10-21T07:15:27",
            "upload_time_iso_8601": "2024-10-21T07:15:27.845049Z",
            "url": "https://files.pythonhosted.org/packages/d7/4f/3f8328b4568b5a046dea0f6b8a623b90be04343ef8ba7c7aac49e513e8d5/evm_decoder-0.1.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-21 07:15:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "gmatrixuniverse",
    "github_project": "evm-decoder",
    "github_not_found": true,
    "lcname": "evm-decoder"
}
        
Elapsed time: 0.36291s