https://github.com/badger-finance/badger-voter-sdk
Library for voters shared code
https://github.com/badger-finance/badger-voter-sdk
Last synced: 3 months ago
JSON representation
Library for voters shared code
- Host: GitHub
- URL: https://github.com/badger-finance/badger-voter-sdk
- Owner: Badger-Finance
- License: mit
- Created: 2022-07-25T07:26:59.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-05-16T15:54:54.000Z (about 2 years ago)
- Last Synced: 2024-04-24T02:02:41.069Z (about 1 year ago)
- Language: Python
- Size: 102 KB
- Stars: 1
- Watchers: 5
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Badger SDK for autovoters
This is the library for shared code that is used in autovoters, such as cvx autovoter and aura autovoter
| Build | Coverage | PYPI |
| ------------- | ------------- | ------------- |
| [](https://github.com/Badger-Finance/badger-voter-sdk/actions/workflows/test.yml) | [](https://codecov.io/gh/Badger-Finance/badger-voter-sdk) | [](https://badge.fury.io/py/badger-voter-sdk) |## List of functional modules:
## Utilities
---
### Get web3 instance
```python
import os
from badger_voter_sdk.web3 import get_web3web3 = get_web3(os.getenv("ETHNODEURL"))
```
Or web3 will be created from default secrets in `constants.py`### AWS get secret
Getting secret from AWS by id and key```python
from badger_voter_sdk.aws import get_secretsecret = get_secret(secret_id="SecretId", secret_key="SecretKey")
```### Json logger
Preconfigured json logger to be shared across voting bots projects```python
from badger_voter_sdk.json_logger import loggerlogger.info()
```## Snapshot and data collectors
### Get all voters for snapshot
```python
from badger_voter_sdk.collectors.snapshot_collectors import get_votersvoters = get_voters(snapshot_id="some_snapshot_id")
```### Get vlTOKEN amounts per wallet voted for given snapshot round
```python
from badger_voter_sdk.collectors.api_collectors import get_scoresscores = get_scores(
"aurafinance.eth", "1", "",
[""],
[{'name': "erc20-votes", 'network': "1", 'params': {
'symbol': "", 'address': ""}}]
)
```### Get voting choices with voting power
You need to combine two previous functions outputs:```python
from badger_voter_sdk.collectors.data_processors import extract_voting_power_per_poolchoices_with_votes = extract_voting_power_per_pool(voters={"": {"1": 123}}, scores={"": 123333.1})
```