The problem of fair and democratic elections is definitely one of the toughest problems faced by the world today. Corruption and distrust everywhere stand as obstructions to the conduction of such elections. The blockchain technology could definitely help a little in this aspect. Decentralised elections can fix the issue of trust and guarantee fair elections. However implementing such a solution nationwide is not an easy task considering the presence of people in many developing countries who are not even familiar with or seen smartphones. NITCVote is a project to tackle a much smaller use case; elections within universities for student representatives. The project is based on Johannes Mols ethVote project and has been enhanced to provide better security and secrecy of votes.
The code for this project is distributed in three repositories:
Smart Contracts
Backend
Frontend
- Clone the voting dApp and deploy the contracts to Ganache
- Note the addresses of the deployed contracts
git clone https://github.com/farisshajahan/NITCVote-react
cd NITCVote-react
npm install
- Open
src/ethereum/addresses.js
and insert the contract addresses there. npm start
The webpage should be up at http://localhost:3000
Run npm run build
to generate a production build that can be hosted on a webserver.