Cast - A New Democracy

Inspiration

The growing need for transparent voting systems is what inspired us. The idea of blockchain is also something that we wanted to try. The marriage of both ideas is really worth trying.

What it does

Cast is a transparent voting system. It enables voters to vote their candidate online within a given time period. Voters can vote at most once. The system presents real time vote percentages and helps users to see the status of the candidates. It will save time, money and build trust. No fraud!

How the system works

We have used the concept of blockchain to build the system. Blockchain is decentralized application which records the transactions in the form of blocks, once a transaction is made no one can manipulate the system. It keeps track of who made the transaction and when it happened. There is future for this technology and we made prototype of what it can do.

How was it built

In blockchain technology, there is a concept called contract where we build all the logic and deploy it to the distributed blockchain database. Once it is deployed, we are set to do transactions and it will verify each and every transaction with the current history. It saves the transaction once it's verified. We used javascript, html, css for the front end and web3.js, nodejs, solidity for the back end.

Challenges we ran into

We planned to run our project on a testnet of block chains and started downloading it. With the existing internet download speed, the download process din't finish and we are not able to run our system on it.

Accomplishments that we're proud of

Being able to develop a transparent system that's crucial to our voting system.

What we learned

We learned how block chains really work. The frameworks used to test them were also new to us. More than everything we have learned team spirit and working for that long period of time.

What's next for Cast - A New Democracy

Automated deployments, scalability, running the system on a real dataset of blockchain, building mobile friendly interface is our next for the project.