Skip to content

Repository files navigation

Decentralized Election Voting System

This project is a decentralized application (DApp) for an election voting system built on the Ethereum blockchain. The system allows users to vote in a secure and transparent manner, ensuring that votes are immutable and publicly verifiable.

Table of Contents

Features

  • Secure Voting: Ensures that each voter can vote only once.
  • Transparency: All votes are publicly verifiable on the Ethereum blockchain.
  • Decentralization: No single point of failure; voting is handled by smart contracts.
  • Immutability: Votes cannot be changed once cast.

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Node.js and npm installed
  • Truffle framework installed globally (npm install -g truffle)
  • Ganache installed for local Ethereum blockchain (npm install -g ganache-cli)
  • MetaMask extension installed in your browser

Installation

  1. Clone the repository:

    git clone https://github.com/retr0-kernel/Voting-System.git
    cd Voting-System
  2. Install dependencies:

    npm install
  3. Compile the smart contracts:

    truffle compile
  4. Migrate the smart contracts to the local blockchain:

    truffle migrate
  5. Run the development server:

    npm start

Usage

  1. Start Ganache to run a local Ethereum blockchain:

    ganache-cli
  2. Open your browser and connect MetaMask to the local blockchain (usually http://127.0.0.1:8545).

  3. Import one of the Ganache accounts into MetaMask.

  4. Open the application in your browser (usually http://localhost:3000).

  5. Use the application to register candidates and cast votes.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages