voltaire-bundler


Namevoltaire-bundler JSON
Version 0.1.0a22 PyPI version JSON
download
home_pagehttps://github.com/candidelabs/voltaire
SummaryEIP-4337 python Bundler
upload_time2023-09-02 08:53:09
maintainer
docs_urlNone
authorCandide Wallet Team
requires_python>=3.11,<4.0
licenseLGPL
keywords 4337 account_abstraction ethereum bundler
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
  <h1 align="center">Voltaire</h1>
</div>

<!-- PROJECT LOGO -->

<div align="center">
  <img src="https://user-images.githubusercontent.com/7014833/220775957-8add0c20-97d0-4bad-8f7c-fefb6df52ae2.png" height=600>
  <p>
    <b>
      Modular, developer-friendly and lighting-fast Python Bundler for Ethereum EIP-4337 Account Abstraction
    </b>
   </p>
</div>

*The project is still work in progress.*

<p>
  <a href="https://discord.gg/NM5HakA9nC">
    <img 
      src="https://img.shields.io/discord/985647134378430515?logo=discord"
      alt="chat on Discord">
  </a>
</p>

# Deployment

Deploy Voltaire using the latest docker image

```
docker run --net=host --rm -ti ghcr.io/candidelabs/voltaire/voltaire-bundler:latest --entrypoint $ENTRYPOINT --bundler_secret $BUNDLER_SECRET --rpc_url $RPC_URL --rpc_port $PORT --ethereum_node_url $ETHEREUM_NODE_URL --chain_id $CHAIN_ID --verbose
```

# Development

The information provided is only a rough estimate based on the current implementation. We plan on publishing more documentation for different developer audiences as we move forward.

## Ubuntu: Get started testing the bundler in 5 minutes 

### Install Poetry
```
curl -sSL https://install.python-poetry.org | python3 -
```
### Install dependencies
```
poetry install
```

### Make sure you are using the right python version

```
poetry env use python3.11
```

### Install Docker

Follow the installation guide to install [docker on ubunutu](https://docs.docker.com/engine/install/ubuntu/)

### Post docker installation

Follow the instruction for docker's [post linux instalation](https://docs.docker.com/engine/install/linux-postinstall/)  

### Start geth
```
docker run --rm -ti --name geth -p 8545:8545 ethereum/client-go:v1.10.26 \
  --miner.gaslimit 12000000 \
  --http --http.api personal,eth,net,web3,debug \
  --http.vhosts '*,localhost,host.docker.internal' --http.addr "0.0.0.0" \
  --ignore-legacy-receipts --allow-insecure-unlock --rpc.allow-unprotected-txs \
  --dev \
  --verbosity 4 \
  --nodiscover --maxpeers 0 --mine --miner.threads 1 \
  --networkid 1337
```

### Deploy the EntryPoint and fund the signer (in another terminal)
```
geth --exec 'loadScript("scripts/deploy.js")' attach http://0.0.0.0:8545
```

### Set env values
```
source scripts/init-params 
```

### Run the bundler
```
poetry run python3 -m voltaire_bundler --entrypoint $ENTRYPOINT --bundler_secret $BUNDLER_SECRET --chain_id 1337 --verbose
```

### Test the bundler by cloning `eth-infinitism/bundler-spec-tests`

Follow the instruction in <a href='https://github.com/eth-infinitism/bundler-spec-tests'>eth-infinitism/bundler-spec-tests</a> to install dependencies and run the test

## Contributions

Thank you for considering contributing to open-source code! We welcome contributions and are grateful for even the smallest of fixes. 

We will be publishing guidelines on how to contribute as we move forward with Voltaire's development.

If you want to contribute today or follow along with the contributor discussion, you can use our main discord to chat with us about the development of Voltaire.

# Status

The project is not ready for production use. We hope to have a full implentation sometimes in April/May 2023, followed by optimizations. In the meantime, we're working on making sure this repo is well-documented, abstracted and tested.

<!-- LICENSE -->
## License
LGPL

<!-- ACKNOWLEDGMENTS -->
## Acknowledgments

None of this would have been possible without the following teams and organizations below: 

* <a href='https://eips.ethereum.org/EIPS/eip-4337'>EIP-4337: Account Abstraction via Entry Point Contract specification </a>
* <a href='https://github.com/eth-infinitism/bundler'>eth-infinitism/bundler</a>
* Voltaire is funded exclusively by [The Ethereum Foundation](https://ethereum.foundation/)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/candidelabs/voltaire",
    "name": "voltaire-bundler",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.11,<4.0",
    "maintainer_email": "",
    "keywords": "4337,account_abstraction,ethereum,bundler",
    "author": "Candide Wallet Team",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/8b/49/e31ca4386b29ca59f09e87ab7310d400dafdafdcb387a5b982ce788976fa/voltaire_bundler-0.1.0a22.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n  <h1 align=\"center\">Voltaire</h1>\n</div>\n\n<!-- PROJECT LOGO -->\n\n<div align=\"center\">\n  <img src=\"https://user-images.githubusercontent.com/7014833/220775957-8add0c20-97d0-4bad-8f7c-fefb6df52ae2.png\" height=600>\n  <p>\n    <b>\n      Modular, developer-friendly and lighting-fast Python Bundler for Ethereum EIP-4337 Account Abstraction\n    </b>\n   </p>\n</div>\n\n*The project is still work in progress.*\n\n<p>\n  <a href=\"https://discord.gg/NM5HakA9nC\">\n    <img \n      src=\"https://img.shields.io/discord/985647134378430515?logo=discord\"\n      alt=\"chat on Discord\">\n  </a>\n</p>\n\n# Deployment\n\nDeploy Voltaire using the latest docker image\n\n```\ndocker run --net=host --rm -ti ghcr.io/candidelabs/voltaire/voltaire-bundler:latest --entrypoint $ENTRYPOINT --bundler_secret $BUNDLER_SECRET --rpc_url $RPC_URL --rpc_port $PORT --ethereum_node_url $ETHEREUM_NODE_URL --chain_id $CHAIN_ID --verbose\n```\n\n# Development\n\nThe information provided is only a rough estimate based on the current implementation. We plan on publishing more documentation for different developer audiences as we move forward.\n\n## Ubuntu: Get started testing the bundler in 5 minutes \n\n### Install Poetry\n```\ncurl -sSL https://install.python-poetry.org | python3 -\n```\n### Install dependencies\n```\npoetry install\n```\n\n### Make sure you are using the right python version\n\n```\npoetry env use python3.11\n```\n\n### Install Docker\n\nFollow the installation guide to install [docker on ubunutu](https://docs.docker.com/engine/install/ubuntu/)\n\n### Post docker installation\n\nFollow the instruction for docker's [post linux instalation](https://docs.docker.com/engine/install/linux-postinstall/)  \n\n### Start geth\n```\ndocker run --rm -ti --name geth -p 8545:8545 ethereum/client-go:v1.10.26 \\\n  --miner.gaslimit 12000000 \\\n  --http --http.api personal,eth,net,web3,debug \\\n  --http.vhosts '*,localhost,host.docker.internal' --http.addr \"0.0.0.0\" \\\n  --ignore-legacy-receipts --allow-insecure-unlock --rpc.allow-unprotected-txs \\\n  --dev \\\n  --verbosity 4 \\\n  --nodiscover --maxpeers 0 --mine --miner.threads 1 \\\n  --networkid 1337\n```\n\n### Deploy the EntryPoint and fund the signer (in another terminal)\n```\ngeth --exec 'loadScript(\"scripts/deploy.js\")' attach http://0.0.0.0:8545\n```\n\n### Set env values\n```\nsource scripts/init-params \n```\n\n### Run the bundler\n```\npoetry run python3 -m voltaire_bundler --entrypoint $ENTRYPOINT --bundler_secret $BUNDLER_SECRET --chain_id 1337 --verbose\n```\n\n### Test the bundler by cloning `eth-infinitism/bundler-spec-tests`\n\nFollow the instruction in <a href='https://github.com/eth-infinitism/bundler-spec-tests'>eth-infinitism/bundler-spec-tests</a> to install dependencies and run the test\n\n## Contributions\n\nThank you for considering contributing to open-source code! We welcome contributions and are grateful for even the smallest of fixes. \n\nWe will be publishing guidelines on how to contribute as we move forward with Voltaire's development.\n\nIf you want to contribute today or follow along with the contributor discussion, you can use our main discord to chat with us about the development of Voltaire.\n\n# Status\n\nThe project is not ready for production use. We hope to have a full implentation sometimes in April/May 2023, followed by optimizations. In the meantime, we're working on making sure this repo is well-documented, abstracted and tested.\n\n<!-- LICENSE -->\n## License\nLGPL\n\n<!-- ACKNOWLEDGMENTS -->\n## Acknowledgments\n\nNone of this would have been possible without the following teams and organizations below: \n\n* <a href='https://eips.ethereum.org/EIPS/eip-4337'>EIP-4337: Account Abstraction via Entry Point Contract specification </a>\n* <a href='https://github.com/eth-infinitism/bundler'>eth-infinitism/bundler</a>\n* Voltaire is funded exclusively by [The Ethereum Foundation](https://ethereum.foundation/)\n",
    "bugtrack_url": null,
    "license": "LGPL",
    "summary": "EIP-4337 python Bundler",
    "version": "0.1.0a22",
    "project_urls": {
        "Homepage": "https://github.com/candidelabs/voltaire",
        "Repository": "https://github.com/candidelabs/voltaire"
    },
    "split_keywords": [
        "4337",
        "account_abstraction",
        "ethereum",
        "bundler"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "61181aad64dd145822517b292477971c30288a42a67542517ab551a6e91c15a6",
                "md5": "aa5a369b3aedc2a6c2cd613be9e1554d",
                "sha256": "1add966337f38557e3c4b1149af0427a60227bfc76944bfd1ec2aabc18e4aad5"
            },
            "downloads": -1,
            "filename": "voltaire_bundler-0.1.0a22-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "aa5a369b3aedc2a6c2cd613be9e1554d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11,<4.0",
            "size": 46046,
            "upload_time": "2023-09-02T08:53:06",
            "upload_time_iso_8601": "2023-09-02T08:53:06.277097Z",
            "url": "https://files.pythonhosted.org/packages/61/18/1aad64dd145822517b292477971c30288a42a67542517ab551a6e91c15a6/voltaire_bundler-0.1.0a22-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8b49e31ca4386b29ca59f09e87ab7310d400dafdafdcb387a5b982ce788976fa",
                "md5": "3ae45a9744406edad4cc67e1caa64eb3",
                "sha256": "cd2310f62cb7afd8adfc54963e8f73062e6c913cf9ef7468db32ebc596f88fa5"
            },
            "downloads": -1,
            "filename": "voltaire_bundler-0.1.0a22.tar.gz",
            "has_sig": false,
            "md5_digest": "3ae45a9744406edad4cc67e1caa64eb3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11,<4.0",
            "size": 36877,
            "upload_time": "2023-09-02T08:53:09",
            "upload_time_iso_8601": "2023-09-02T08:53:09.140032Z",
            "url": "https://files.pythonhosted.org/packages/8b/49/e31ca4386b29ca59f09e87ab7310d400dafdafdcb387a5b982ce788976fa/voltaire_bundler-0.1.0a22.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-09-02 08:53:09",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "candidelabs",
    "github_project": "voltaire",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "voltaire-bundler"
}
        
Elapsed time: 0.11412s