https://github.com/captaincodercool/blockchain-based-voting-system

A secure, transparent voting platform using Ethereum and Solidity. Features React frontend, Node.js backend, MongoDB for data, ensuring tamper-proof voting and voter anonymity. Revolutionizes fair and verifiable electoral processes.

https://github.com/captaincodercool/blockchain-based-voting-system

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.4%) to scientific vocabulary
Last synced: 9 months ago · JSON representation

Repository

A secure, transparent voting platform using Ethereum and Solidity. Features React frontend, Node.js backend, MongoDB for data, ensuring tamper-proof voting and voter anonymity. Revolutionizes fair and verifiable electoral processes.

Basic Info
  • Host: GitHub
  • Owner: CAPTAINCODERCOOL
  • License: mit
  • Language: JavaScript
  • Default Branch: master
  • Size: 2.8 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created about 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme License

README.md

🗳️ Blockchain-Based Voting System

A secure, transparent, and tamper-proof digital voting platform built on the Ethereum blockchain. This application ensures end-to-end verifiability of votes using smart contracts and features a clean frontend built with React and a backend powered by Node.js.


🔐 Key Features

  • ✅ Voter registration and eligibility check
  • 🔒 Vote encryption with one-vote-per-user policy
  • 🔁 Transparent result tallying via smart contract
  • 📊 Real-time vote updates with web3.js integration
  • 🧑‍💻 Admin panel for election control and candidate setup

⚙️ Tech Stack

  • Smart Contracts: Solidity
  • Frontend: React.js
  • Backend: Node.js, Express
  • Blockchain: Ethereum (via Ganache/Infura)
  • Wallet Integration: MetaMask
  • Smart Contract Deployment: Truffle / Hardhat

🧰 Installation & Setup

  1. Clone the Repository ```bash git clone https://github.com/yourusername/blockchain-voting-system.git cd blockchain-voting-system Install Dependencies

bash Copy code cd client npm install

cd ../server npm install Configure Blockchain

Install Ganache

Run Ganache locally or connect to Infura for testnet

Deploy smart contract:

bash Copy code truffle compile truffle migrate --network development Connect MetaMask

Import Ganache account into MetaMask

Connect to Localhost 7545 or your selected testnet

▶️ Run the App Start Backend Server bash Copy code cd server npm start Start Frontend (React) bash Copy code cd client npm start Open http://localhost:3000 in your browser.

🗂 Project Structure perl Copy code blockchain-voting-system/ ├── client/ # React frontend │ ├── src/ │ │ ├── components/ │ │ ├── App.js │ │ └── index.js ├── contracts/ # Solidity smart contracts │ └── Voting.sol ├── migrations/ # Truffle migration scripts ├── server/ # Node.js + Express backend │ └── server.js ├── truffle-config.js # Truffle setup ├── package.json └── README.md 📸 Demo Preview (Optional) 👤 Voter Registration

🗳️ Cast Vote (MetaMask popup)

📊 Live Vote Tally

🧑‍⚖️ Admin Controls

💡 Future Enhancements Email/SMS-based voter authentication

Integration with national ID systems

IPFS storage for audit logs

Multi-election and candidate support

Mobile-responsive voting dashboard

For contributions or suggestions, feel free to fork and collaborate!

Owner

  • Login: CAPTAINCODERCOOL
  • Kind: user

GitHub Events

Total
  • Push event: 3
  • Create event: 3
Last Year
  • Push event: 3
  • Create event: 3

Dependencies

package.json npm
  • @truffle/contract ^4.6.18
  • browserify ^17.0.0
  • dotenv ^16.0.3
  • express ^4.18.2
  • jsonwebtoken ^9.0.0
  • web3 ^1.9.0