Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/candidelabs/Candide-Paymaster-RPC
Paymaster RPC endpoints for ERC-4337
https://github.com/candidelabs/Candide-Paymaster-RPC
Last synced: 3 months ago
JSON representation
Paymaster RPC endpoints for ERC-4337
- Host: GitHub
- URL: https://github.com/candidelabs/Candide-Paymaster-RPC
- Owner: candidelabs
- License: mit
- Created: 2022-10-23T14:36:04.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-05-10T13:18:15.000Z (over 1 year ago)
- Last Synced: 2024-08-04T22:09:37.133Z (5 months ago)
- Language: Python
- Homepage:
- Size: 74.2 KB
- Stars: 11
- Watchers: 5
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: License
Awesome Lists containing this project
- awesome-account-abstraction - Python Implementation
README
Candide Wallet Relayer and Paymaster RPC
# About
Candide Wallet is a smart contract wallet for Ethereum Mainnet and EVM compatible rollups.
This repo includes the paymaster RPC service.# Features
- a paymaster RPC that approves and signs operation to allow for gas sponsoship and paying gas with ERC-20 tokens.
- admin control panel to view processed operations# How to use this repo
### Create a virtual environment
```
python3 -m venv .venv
```### Run virtual environment (linux)
```
source .venv/bin/activate
```### Install required libs
```
pip install -r requirements.txt
```### Setup the database
```
python manage.py makemigrations paymaster
python manage.py migrate
python manage.py loaddata paymaster/tokenSeed.json
```### Change .env variables if needed
the defaults work with the CandideWalletContracts repo for testing### Create Super user for admin panel
```
python manage.py createsuperuser
```### Run the server with default os.environ
```
python manage.py runserver
```### Run the server with a custom os.environ
```
python3 manage.py runserver --port 1337 --chainId 10 --HTTPProvider http://localhost:8545
```### Access the control panel
```
http://127.0.0.1:8000/admin/
```## Using Docker:
```
docker compose up -d
```## TODO
- [ ] Gas limit calculation and verification (paymaster)
- [ ] Fetching live token prices and verifying source wallets balance (paymaster)
- [ ] Adding white list and black list for source wallets (paymaster)## License
MIT
## Acknowledgments
* eth-infinitism/account-abstraction
* Gnosis-py
* EIP-4337: Account Abstraction via Entry Point Contract specification