Decentralized Voting Application
A blockchain based voting application that ensures secure and transparent voting process. Developed using Solidity, Ethereum, web3.js, React.js, HTML, and CSS.
Project Setup & Installation
- Clone the repository to your local machine.
- Install dependencies with
npm install
. - Start the local development server with
npm start
.
Running the Application
To start the application, use npm start
. Make sure you have Metamask installed and configured in your browser.
Smart Contract Functions
The smart contract contains functions for registering voters, adding candidates, voting, and calculating the result. Only the owner of the contract can add candidates.
Testing the Application
To test the application, use the command truffle test
. Make sure you have a local Ethereum blockchain running.
Future Improvements
- Add a better user authentication system.
- Improve the user interface for better user experience.
- Extend the testing for more comprehensive coverage.
Contributing to the Project
Contributions are welcome. Please fork the repository and create a pull request with your changes.