Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

mehtaAnsh/BlockChainVoting

Repository files navigation

BlockChainVoting

A blockchain-based E-voting system, created as the final year project of Shri Bhagubhai Mafatlal Polytechnic. Teammates include me, Sayyam Gada and Charmee Mehta.

The application is MIT-Licensed.

Build Setup

# install dependencies
npm install
# serve with hot reload at localhost:3000
npm start

Create your own .env file and the file should contain:

EMAIL=YOUR_EMAIL_ID
PASSWORD=YOUR_PASSWORD_FOR_EMAIL_ID

Install MetaMask extension (https://metamask.io/download.html) and make sure to have some Ether to test the application locally. Ether can be fetched from Rinkeby Faucet (https://faucet.rinkeby.io)

Note:

  • Make sure to install Node.js v11.14.0 to make sure the app runs fine. Testing for other node versions is yet to be done.
  • MongoDB must be working in background on localhost:27017
Please star the repo if it helped you in any way!

Tech Stack:

  • Solidity/Web3 (for writing/connecting the Blockchain contract)
  • Next.js & Semantic UI React (front-end)
  • MongoDB/ExpressJS/Node.js (back-end)
  • IPFS (file storage for images)

Screenshots of the app:

Homepage of the application:

Company registers/logs in:

Company creates an election if not created:

Dashboard on successful election creation:

List of candidates for the election (here, you can add candidates):

Candidate has been notified on the mail:

List of voters for the election (here, you can add voters):

Voters have been sent their secure usernames and passwords on the mail:

Voter login page:

Successful voting scenario:

Unsuccessful voting scenario:

Notification to each candidate and voter for the winner of candidates:

AltStyle によって変換されたページ (->オリジナル) /