Tech Used
- Vue Js
- Algorand Testnet
- Purestake API
- Pyteal as Backend
Inspiration
I wanted to build a Decentralized Voting System using Blockchain .After read the hackathon readme file we wanted to made a vue app on the algo-testnet . In their People can Vote their Favourite team . I am Building this voting app of the IPL(Indian Premier Leauge) .
- Using blockchain, voting process can be made more secure, transparent, immutable, and reliable
Advantages
- You can vote anytime/anywhere (During Pandemics like COVID-19 where it’s impossible to hold elections physically).
- Secure
- Immutable
- Faster
- Transparent
- Only Creator can Choose Winner.
How i built it
We Know that :-
"A blockchain is a time-stamped decentralized series of fixed records that contains data of any size is controlled by a large network of computers that are scattered around the globe and not owned by a single organization. Every block is secured and connected with each other using hashing technology which protects it from being tempered by an unauthorized person."
- The contracts.py file contains the smart contract code and is written with the PyTeal library. In this example, a new smart contract is deployed for each new auction. And as we described in the overview, every auction needs to support creating, setting up, placing a bid, and closing out an auction. In a bit, we’ll take you through where each of these scenarios is represented in the code.
- Only the owner of the web-app can set winner and add a contest because if we gave permission to all then it's can not secure.
Backend Functioning
This DApp is composed of a stateful smart contract and a stateless smart contract (as an escrow account).
Upon creation, the DApp requires several arguments:
- Team1Name - Name of the 1st team, defined on creation.
- Team2Name - Name of the 2nd team, defined on creation.
- LimitDate - Date after which no more vote can be entertained, and the winning team can be set by the creator or owner.
- EndDate - Date after which funds can be reclaimed if the creator did not set a winning team.
Frontend
Challenges we ran into
I made this application using vue as a frontend and pyteal as our backend.
Accomplishments that I proud of
- My first Dapp in the Algorand Blockchain.
- It's takes more than 48hours but finally it's over you can trylink