eip712


Nameeip712 JSON
Version 0.2.7 PyPI version JSON
download
home_pagehttps://github.com/ApeWorX/eip712
Summaryeip712: Message classes for typed structured data hashing and signing in Ethereum
upload_time2024-04-15 18:42:08
maintainerNone
docs_urlNone
authorApeWorX Ltd.
requires_python<4,>=3.8
licenseApache-2.0
keywords ethereum
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Quick Start

Message classes for typed structured data hashing and signing in Ethereum.
See [EIP-712](https://eips.ethereum.org/EIPS/eip-712) for details.

## Dependencies

- [python3](https://www.python.org/downloads) version 3.8 up to 3.12.

## Installation

### via `pip`

You can install the latest release via [`pip`](https://pypi.org/project/pip/):

```bash
pip install eip712
```

### via `setuptools`

You can clone the repository and use [`setuptools`](https://github.com/pypa/setuptools) for the most up-to-date version:

```bash
git clone https://github.com/ApeWorX/eip712.git
cd eip712
python3 setup.py install
```

## Quick Usage

Define EIP-712 models:

```python
from eip712.messages import EIP712Message, EIP712Type


class Person(EIP712Type):
    name: "string"
    wallet: "address"


class Mail(EIP712Message):
    _chainId_ = 1
    _name_ = "Ether Mail"
    _verifyingContract_ = "0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC"
    _version_ = "1"

    sender: Person
    receiver: Person
```

# Initialize a Person object as you would normally

person = Person(name="Joe", wallet="0xa27CEF8aF2B6575903b676e5644657FAe96F491F")

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ApeWorX/eip712",
    "name": "eip712",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4,>=3.8",
    "maintainer_email": null,
    "keywords": "ethereum",
    "author": "ApeWorX Ltd.",
    "author_email": "admin@apeworx.io",
    "download_url": "https://files.pythonhosted.org/packages/9a/de/f93da50c86f593c4286fed783a9899bc066ddfd40983a7267293586ee68b/eip712-0.2.7.tar.gz",
    "platform": null,
    "description": "# Quick Start\n\nMessage classes for typed structured data hashing and signing in Ethereum.\nSee [EIP-712](https://eips.ethereum.org/EIPS/eip-712) for details.\n\n## Dependencies\n\n- [python3](https://www.python.org/downloads) version 3.8 up to 3.12.\n\n## Installation\n\n### via `pip`\n\nYou can install the latest release via [`pip`](https://pypi.org/project/pip/):\n\n```bash\npip install eip712\n```\n\n### via `setuptools`\n\nYou can clone the repository and use [`setuptools`](https://github.com/pypa/setuptools) for the most up-to-date version:\n\n```bash\ngit clone https://github.com/ApeWorX/eip712.git\ncd eip712\npython3 setup.py install\n```\n\n## Quick Usage\n\nDefine EIP-712 models:\n\n```python\nfrom eip712.messages import EIP712Message, EIP712Type\n\n\nclass Person(EIP712Type):\n    name: \"string\"\n    wallet: \"address\"\n\n\nclass Mail(EIP712Message):\n    _chainId_ = 1\n    _name_ = \"Ether Mail\"\n    _verifyingContract_ = \"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC\"\n    _version_ = \"1\"\n\n    sender: Person\n    receiver: Person\n```\n\n# Initialize a Person object as you would normally\n\nperson = Person(name=\"Joe\", wallet=\"0xa27CEF8aF2B6575903b676e5644657FAe96F491F\")\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "eip712: Message classes for typed structured data hashing and signing in Ethereum",
    "version": "0.2.7",
    "project_urls": {
        "Homepage": "https://github.com/ApeWorX/eip712"
    },
    "split_keywords": [
        "ethereum"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bc440e9351190f80b1d23253fcdb5a2ac3c1a2f6027be822d8f4b50526a23939",
                "md5": "6ad61a7e0329a6691ec7cbdcfe6a6e45",
                "sha256": "a722400d8f72650b8ae8af3593894de35dfa6d158984e8bff933008e9710013f"
            },
            "downloads": -1,
            "filename": "eip712-0.2.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6ad61a7e0329a6691ec7cbdcfe6a6e45",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4,>=3.8",
            "size": 10293,
            "upload_time": "2024-04-15T18:42:06",
            "upload_time_iso_8601": "2024-04-15T18:42:06.781016Z",
            "url": "https://files.pythonhosted.org/packages/bc/44/0e9351190f80b1d23253fcdb5a2ac3c1a2f6027be822d8f4b50526a23939/eip712-0.2.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9adef93da50c86f593c4286fed783a9899bc066ddfd40983a7267293586ee68b",
                "md5": "0be5e06ec635ff89dc7c692aefee1e37",
                "sha256": "2d055fd6f14fffe338b9fba27935e75a9133f7e4417ea9b8331995c2ef58f3b6"
            },
            "downloads": -1,
            "filename": "eip712-0.2.7.tar.gz",
            "has_sig": false,
            "md5_digest": "0be5e06ec635ff89dc7c692aefee1e37",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4,>=3.8",
            "size": 62127,
            "upload_time": "2024-04-15T18:42:08",
            "upload_time_iso_8601": "2024-04-15T18:42:08.341162Z",
            "url": "https://files.pythonhosted.org/packages/9a/de/f93da50c86f593c4286fed783a9899bc066ddfd40983a7267293586ee68b/eip712-0.2.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-15 18:42:08",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ApeWorX",
    "github_project": "eip712",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "eip712"
}
        
Elapsed time: 0.26341s