Skip to content

dVoting is a blockchain-based voting platform developed using Ganache, Truffle, ReactJS, TailwindCss, web3.js, and Solidity. dVoting allows users to register, cast votes and view results securely and trustfully.

Notifications You must be signed in to change notification settings

MunemHashmi/d-voting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation

dVoting - a blockchain based voting application

dVoting is a blockchain-based voting platform developed using Ganache, Truffle, ReactJS, TailwindCss, web3.js, and Solidity. dVoting allows users to register, cast votes and view results securely and trustfully.

Features

dVoting incorporates the following features:

  • Trust - Blockchain technology allows for secure transactions, with all data stored on the blockchain itself.
  • Transparency - All transactions on the blockchain are transparent and visible.
  • Reliability - A vote cast on the dVoting platform can be tracked and audited.

Benefits

dVoting provides several benefits, such as:

  • Increased accuracy - Electronic voting reduces chances of human errors.
  • Increased turnout - Easier and more convenient voting process.
  • Cost-effectiveness - Lower cost of conducting a vote, as there is no need to print or distribute ballot papers or count the votes manually.

Technology

dVoting is powered by the following technologies:

  • Ganache – private Ethereum blockchain
  • Truffle – smart contract development framework
  • ReactJS – Web application framework
  • TailwindCSS – styling library
  • web3.js – JavaScript library for interacting with the blockchain
  • Solidity – programing language for writing smart contracts

Installation

To install dVoting, follow these steps:

  1. Install Ganache, Truffle, ReactJS and web3.js on your system.

  2. Clone the dVoting repository from Github.

  3. In the terminal, navigate to the blockchain directory, and compile the project using Truffle:

$ truffle compile

  1. Migrate the contracts to your local blockchain:

$ truffle migrate

  1. Copy the contract address and paste it in the config.js file located in the src directory of dVoting.

  2. Get the ABI (Application Binary Interface) of the contract from the ResultCalculation.js file located in the build folder of the blockchain directory.

  3. Paste the ABI in the config.js file located in the src directory of dVoting.

  4. Ensure your Ganache blockchain is running, and that your React app is connected to the blockchain.

  5. In the terminal, navigate to the dVoting directory. Install the dependencies by running the following command in the terminal:

$ npm install

  1. Launch the dVoting application by running the following command in the terminal:

$ npm start

  1. Navigate to http://localhost:3000 in your browser.

About

dVoting is a blockchain-based voting platform developed using Ganache, Truffle, ReactJS, TailwindCss, web3.js, and Solidity. dVoting allows users to register, cast votes and view results securely and trustfully.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors