# 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.9 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.9",
"maintainer_email": null,
"keywords": "ethereum",
"author": "ApeWorX Ltd.",
"author_email": "admin@apeworx.io",
"download_url": "https://files.pythonhosted.org/packages/49/24/d579b730e841b22bf5c9acd07e975ffce3a99d2ac89bab569e08e4c2a2ff/eip712-0.2.9.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.9 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.9",
"project_urls": {
"Homepage": "https://github.com/ApeWorX/eip712"
},
"split_keywords": [
"ethereum"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8a74ca6299c743a9773d6e0ce99f03bc2ef91dd2ef059d9fb0557a82b97118d6",
"md5": "6aa99dcf9c3efb457fd5a921069d23b3",
"sha256": "e81e6e432bdfbeb24f5cef9dcf630025cef65d3f49e157bae615c625165e4208"
},
"downloads": -1,
"filename": "eip712-0.2.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6aa99dcf9c3efb457fd5a921069d23b3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.9",
"size": 10297,
"upload_time": "2024-08-19T14:18:11",
"upload_time_iso_8601": "2024-08-19T14:18:11.655679Z",
"url": "https://files.pythonhosted.org/packages/8a/74/ca6299c743a9773d6e0ce99f03bc2ef91dd2ef059d9fb0557a82b97118d6/eip712-0.2.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4924d579b730e841b22bf5c9acd07e975ffce3a99d2ac89bab569e08e4c2a2ff",
"md5": "ae219645ca2d186a3aa00b7bd15d3453",
"sha256": "993b73cc511d1a5820187f4d9722c2bf66fb6d57dd301b12b5276f290770fcff"
},
"downloads": -1,
"filename": "eip712-0.2.9.tar.gz",
"has_sig": false,
"md5_digest": "ae219645ca2d186a3aa00b7bd15d3453",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.9",
"size": 62034,
"upload_time": "2024-08-19T14:18:13",
"upload_time_iso_8601": "2024-08-19T14:18:13.008732Z",
"url": "https://files.pythonhosted.org/packages/49/24/d579b730e841b22bf5c9acd07e975ffce3a99d2ac89bab569e08e4c2a2ff/eip712-0.2.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-19 14:18:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ApeWorX",
"github_project": "eip712",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "eip712"
}