Votium
Safe and Secure voting system using Ethereum. Built with solidity!
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
About The Project
In this project, we have implemented and tested a sample voting application as a smart contract for the Ethereum network using the Ethereum wallets and the Solidity language. The web application is considered to allow voting for people who have an Ethereum wallet. After an election is held, eventually, the Ethereum blockchain will hold the records of ballots and votes. Users can submit their votes via the Website or directly from their Ethereum wallets, and these transaction requests are handled with the consensus of every single Ethereum node. This consensus creates a transparent environment for voting. In addition to a broad discussion about the reliability and efficiency of the blockchain-based e-voting systems, our application and its test results are presented in this project, too.
Here's why:
- Eliminates voter frauds
- High level of security
- Transparency of transactions is increased
- Hacking threat reduced
Built With
These are technologies we used in this application
Getting Started
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
Prerequisites
This is an example of how to list things you need to use the software and how to install them.
- npm
npm install npm@latest -g
- truffle
npm install truffle -g
- ganache
Installation
- Clone the repo
git clone https://github.com/SreemanthG/Votium.git
- Install NPM packages
cd Votium npm install
- Compile and Migrate
(note: make sure that ganache gui is running in the background)
truffle compile truffle migrate
- Run the project
npm run dev
Usage
Use this demo video to understand about the project.
For more examples, please refer to the Documentation
Roadmap
See the open issues for a list of proposed features (and known issues).
Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
Distributed under the MIT License. See LICENSE
for more information.
Contact
Feel free to send feedback on Twitter or file an issue. Feature requests are always welcome. You can contact me at
Sreemanth Gourishetty - @GSreemanth - sreemanth2001@gmail.com
Project Link: https://github.com/SreemanthG/Votium