Skip to content

A proof-of-concept online voting system designed to promote transparency, security, and deter fraud.

Notifications You must be signed in to change notification settings

xavierdmello/Blockchain_Elections

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blockchain Elections

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.

ElectionsCanada

Installation

Windows Users:

  1. Download ElectionsCanada_Windows.zip from the latest release
  2. Run ElectionsCanada.exe

MacOS/Linux Users:

  1. Download Source code (zip) from the latest release
  2. Make sure you have Python, Web3.py, and Python-dotenv installed
  3. Run ElectionsCanada.py

Getting Started

  1. Install a crypto wallet. Metamask is recommended. If you already have a wallet, you can skip this step.
  2. Enter your wallet address in https://faucet.avax.network/ to get free ETH (test funds) to pay for transaction fees.
  3. 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:
      1. Click the three dots in the top right of Metamask
      2. Click on "Account Details"
      3. Click on "Export Private Key"
  4. You're good to go! Create elections, run for office, and vote - with the next generation of secure, decentralized technology.

Contract Addresses

Deployed on the Avalanche Testnet

ElectionManager: 0xC690ce62e557B7e7687DFb58945D49022851621A

ElectionDataAggregator: 0x2A0B10368e69E35a330Fac7DeFcC9dC879e8B021