Skip to content

joker00777/Voting

Repository files navigation

About the Project https://got-voting.web.app/

GOT-Voting is an online Voting platform to vote your favourite game of thrones house which is built using etherium blockchain technology.The web application uses solidity smart contracts for its back-end logic and web3js API with react for it's front end.

Only the owner of the smart contracts have the ability to add new houses.

Screenshot from 2021-09-20 19-27-58

One voter can vote once and he or she can't take back their votes becuase smart contracts are immutable.Once a transaction is done it can't be roll backed.

Getting Started

Prerequisites

1)npm.

2)Truffle(Builds Local blockchain in yr local enviroment).

3)Metamask(It is like an E-wallet that can be added as in extension in modern browsers).

Installation

To get a local copy up and running follow these simple example steps.

1)clone the app

  git clone https://github.com/joker00777/Voting.git

2)In the main folder run

  truffle development

3)In the client folder run

  npm install
  npm start

Usage

One of the most important factors of voting is security. Currently, voting systems are very open to hacks. Without substantial security mechanisms in place, malicious actors can enter the system and alter the outcome. This is where blockchain comes in. The technology has the ability to introduce a seemingly unhackable system. All votes could be verified as soon as voting is finished to ensure they are all counted correctly. Without blockchain, this would have to be done by a central body overseeing the process. This causes many questions to arise about the trust of these central bodies. But with blockchain and its decentralised ledger system, there is no need for a potentially fallible or corruptible central body.

Contributing

As this is my first decentrlized web application I would love everyone's suggesstion to improve this project and also can suggest me good code practice : ).

1)Fork the Project

2)Create your Feature Branch (git checkout -b feature/AmazingFeature)

3)Commit your Changes (git commit -m 'Add some AmazingFeature')

4)Push to the Branch (git push origin feature/AmazingFeature)

5)Open a Pull Request

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published