This app runs inside the BotSurf browser. Don't have it yet? Get the app or extension now!

On-Chain Cooperative Board Election Tool

DAO · All
0 installs · Verified BotGentz app
Launch App
Opens in BotSurf — nothing to install.
CategoryDAO
PlatformAll
Pricing Free
Installs0
Download BotSurf to use — free
No account needed for free apps. Once BotSurf is open, find this app in Apps from the + menu.

About this app

WHAT IT DOES

On-Chain Cooperative Board Election Tool is a DAO tool that enables cooperatives to run board elections on-chain. It reads the cooperative contract address, candidate addresses and platforms, voter eligibility and voting power, election parameters (start/end time and quorum), current vote tallies per candidate, voter participation history, election status (pending/active/closed), account nonce, gas estimates for voting, and previous election records. The tool then guides members through submitting candidate nominations, casting votes, recording votes on-chain, updating vote tallies, closing the election after the deadline, declaring a winner, and transferring any election fees.

HOW TO USE

Connect your wallet via the built-in connector. Select the network where the cooperative contract is deployed. Enter the cooperative contract address, the candidate address, an optional platform statement, the action you wish to perform (nominate, vote, or close election), and the payment token address (use address(0) for native token). The tool will read on-chain data and display a preview including: cooperative contract, action, candidate, platform, payment token, election status, voter eligibility, voting power, candidate list with vote tallies, quorum, election period, and estimated gas. Review all details carefully. Click "execute election action" to perform the selected action. The tool will guide you through the appropriate steps for your chosen action.

TECHNICAL MECHANISM

The tool uses ethers.js v5.7.2 to interact with the cooperative contract. It reads candidate platforms using `getCandidates()` which returns the list of candidates and their platforms. Voter eligibility is checked via `isEligibleVoter(voter)` which verifies membership requirements. Voting power is read using `getVotingPower(voter)` which returns the weight of the voter's vote. Election parameters are read via `getElectionParameters()` which returns start time, end time, and quorum. Vote tallies are read using `getVoteTally(candidate)` which returns the current vote count. Voter participation history is scanned using `eth_getLogs` for `VoteCast` events, with adaptive chunking (halving chunk size on failure) to handle different RPC limits—the tool walks backward from the current block and continues even if some ranges are rejected. The nomination transaction calls `nominateCandidate(address, platform)` on the contract. The vote transaction calls `castVote(candidate)` which records the vote and updates the tally. The close election transaction calls `closeElection()` which validates the quorum, declares the winner, and updates the election status. Gas estimates are calculated using `estimateGas` with EIP-1559 fee data from `feeData`. All transactions are built with EIP-1559 fee data, and the tool uses `effectiveGasPrice` from receipts for accurate cost accounting.

WHAT IT CANNOT SEE

This tool cannot verify that candidates are eligible off-chain—it reads only on-chain nominations. It cannot detect if voters are misrepresenting their identity. It cannot guarantee that election results are fair—voting may be influenced by external factors. It cannot prevent front-running of votes. It cannot validate that voting power is correctly calculated. It cannot detect if the cooperative contract has been modified. It cannot ensure that election parameters are appropriate. It cannot verify that election results are recognized off-chain.

PLEASE NOTE

This tool is EVM-only and supports Ethereum, Polygon, BNB Chain, Arbitrum, Optimism, and Avalanche. Election actions are signed by the connected wallet, and the user pays gas fees. Ensure you understand the cooperative's election rules before participating. The tool does not store or transmit any election data.

Similar Apps

Log in to BotGentz

Suggest an App

Tell us what you'd find useful — if we build it, we'll email you the moment it's ready.