DAO governance tools for CurveDAO.
Project description
Example
import boa
import curve_dao
contract = boa.load("contracts/contract.vy",
curve_dao.get_address("ownership"), curve_dao.get_address("param"), curve_dao.get_address("emergency"), # Set admins
)
ACTIONS = [
("0xcontract", "set_something", ("values",), 70, "set"), # 0xcontract.set_something(("values",), 70, "set)
(contract, "enact"), # contract.enact()
]
DESCRIPTION = "Enact something"
vote_id = curve_dao.create_vote("ownership", ACTIONS, DESCRIPTION,
etherscan_api_key=os.environ["ETHERSCAN_API_KEY"], pinata_token=os.environ["PINATA_TOKEN"])
if is_simulation: # forked environment
curve_dao.simulate(vote_id, "ownership", etherscan_api_key=os.environ["ETHERSCAN_API_KEY"])
What is this?
Simple python package to simulate on-chain CurveDAO proposals and publish proposals for DAO voting on-chain.
Who needs this?
veCRV holders looking to create on-chain proposals such as
- Creating or killing Curve DAO gauges that reward CRV inflation to addresses (liquidity pools or otherwise).
- Creating a smartwallet whitelist to lock veCRV (veCRV restricts smart contracts to lock CRV, subject to a DAO whitelist vote)
- Changing liquidity pool parameters
- Adding gauge types ...
- ... etc.
Curve DAO stakeholders have the ability to change the protocol in many ways. This repository is an attempt to consolidate all on-chain DAO operations into a single tool.
How does one install it?
pip install curve-dao
How does one contribute?
- Fork + Pull Requests.
- Create issues.
- ...
How does one test?
python -m pytest .
How does one build and publish?
- Update codebase
- Up version in pyproject.toml
python -m build; python -m twine upload --repository pypi dist/* --verbose
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
curve_dao-1.0.8.tar.gz
(6.5 kB
view details)
Built Distribution
File details
Details for the file curve_dao-1.0.8.tar.gz
.
File metadata
- Download URL: curve_dao-1.0.8.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c54e7db994e66fedf3fb3017a1156a40bbe1f152f42728658e56cb256861096 |
|
MD5 | d4c2d054305dfd0e3197f7aa208588d0 |
|
BLAKE2b-256 | 69da89fa046ea2f73313a4e6503c5a82395cda7db0c0e240338d0d837824814e |
File details
Details for the file curve_dao-1.0.8-py3-none-any.whl
.
File metadata
- Download URL: curve_dao-1.0.8-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b17c5856a8f6817f821a887f09c63f50c614d22d4cacbce887e6ef013c1e633 |
|
MD5 | cea14a02b28f3ce63c4bfc64f5e044d4 |
|
BLAKE2b-256 | b9f68e5d05a4b5c3ece81f05b43c9e1b56ea66642e18ec0046b00210711c250c |