New! Try it online with my React frontend: https://elections.xavierdmello.com
A proof-of-concept online voting system designed to promote transparency, security, and deter fraud. Created with Python, Solidity, Brownie, Web3.py, and PySimpleGUI.
Windows Users:
- Download
ElectionsCanada_Windows.zip
from the latest release - Run
ElectionsCanada.exe
MacOS/Linux Users:
- Download
Source code (zip)
from the latest release - Make sure you have Python, Web3.py, and Python-dotenv installed
- Run
ElectionsCanada.py
- Install a crypto wallet. Metamask is recommended. If you already have a wallet, you can skip this step.
- Enter your wallet address in https://faucet.avax.network/ to get free ETH (test funds) to pay for transaction fees.
- Click "Add Account" in the Elections Canada app and paste your account's private key.
- Your private key is not stored securely in the Elections app - while testing it out, please use a seperate account that has no real funds attached to it.
- In Metamask, you can get your private key by following these steps:
- Click the three dots in the top right of Metamask
- Click on "Account Details"
- Click on "Export Private Key"
- You're good to go! Create elections, run for office, and vote - with the next generation of secure, decentralized technology.
Deployed on the Avalanche Testnet
ElectionManager:
0xC690ce62e557B7e7687DFb58945D49022851621A
ElectionDataAggregator:
0x2A0B10368e69E35a330Fac7DeFcC9dC879e8B021