Voting Matters
On-chain voting system for fair elections, to enable better democracy with a novel voting system based on leading research on electoral systems
Screenshots






Problem Statement
This project is an (attempt) to implement a novel voting system on chain. The voting system is based on combining 'Ranked Pairs' (https://en.wikipedia.org/wiki/Ranked_pairs) selection of candidates with what otherwise looks like 'Single Transferable Vote' on STV (https://en.wikipedia.org/wiki/Single_transferable_vote). This voting algorithm is profoundly better at selecting candidates to represent votes that systems currently used for democracies worldwide, and I am passionate about getting making such a system available. Unfortunately I did not get nearly as far in this during the hackthon, due to a variety of challenges, and this submission is far from being a working usable imprementation.
Solution
Main technical detals:Arbitrum Stylus Rust for smart contracts.Rust for backend.World ID for voter uniqueness.Was targetting a World Mini App, but did not get that far.Blockscout for viewing online transactions.While I learnt a lot and was making better progress towards the end, it took me some time to get compents of tech stack working. I wrote and deployed Stylus Rust contracts, used Rust for integration and as a rudimentary command line interface during development, used World ID to ensure voter uniqueness (note the system was based on both continuous voting and incrementally building a ranked vote, allowing voters to interact repeatedly but be unique voters), and I used Blockscount for all chain explorer purposes (note I could not do Rust contract verification using Blockscout though).
Hackathon
ETHGlobal Bangkok
2024
Prizes
- 🏆
Blockscout Explorer Big Pool Prize
Blockscout
- 🏆
World Pool Prize
World
Contributors
- RembrandtK
58 contributions