Before trying our app

please read GitHub readme for instructions if you have any questions, do not hesitate to contact me:)

Inspiration

We were drawn to blockchain technology by its promise of transparency and decentralized data storage. These features have the potential to revolutionize how decisions are made collectively, moving away from opaque processes to ones that are open and verifiable by all.

What it does

Dvote enables users to create events and cast votes in a decentralized manner. By harnessing blockchain technology, every vote is recorded on the Polygon network, ensuring integrity and transparency.

How we built it

  1. Started with drafting and testing smart contracts using Solidity on the Remix IDE.
  2. Deployed the contract to the Polygon Cardona testnet to leverage its scalability and low transaction costs.
  3. After testing with a Metamask account(linked to the testnet using chainlist) that the voting d-app blockchain works, we used node.js to create API calls for front-end to use. We then tested with Postman that all API works as intended.
  4. Next, we use Ngrok to broadcast to the internet(Making all API works remotely)
  5. We developed a front end using Flutterflow.
  6. The Flutter-low was developed very well, with good visuals and interface, however, it didn't manage to fully work with the API calls. Thus we sought for an alternative for the front end.
  7. We then decide to use a language that natively supports web3, which is react.js. We then designed a front end in the limited time we had left. And this time we were manage to build a full-stack project.

Challenges we ran into

  1. The biggest problem in this run was trying to generate API calls for the front end to use because Flutterflow does not natively support web3 operations. We spent roughly 4-5 days to make this happen, using node.js and Ngrok, as I previously mentioned.
  2. We then tried to integrate our project using these API calls, however, we didn't manage to do this in time and we had only a few days left, so we had to use an alternative front-end, which is react.js
  3. Teamwork distribution. We didn't work fully efficiently because we didn't split the work into ones that allowed us to work independently and efficiently.

Accomplishments that we're proud of

  1. Building the first full-stack project for some of us.
  2. Building the first d-app.
  3. Troubleshooting and overcoming all the obstacles along the way. ## What we learned
  4. using all the relevant languages-solidity, node
  5. how to generate API calls, make the local server public using Ngrok, and test APIs with Postman.
  6. concept of blockchains!

What's next for Dvote

This is stated in our roadmap, but I will briefly talk about it here as well. Further development-test launch-adding features based on feedback-marketing for broader audience-expansion of services

Built With

Share this project:

Updates