Skip to content

srivas-divyansh/Byteverse_Smart_Contractors

Repository files navigation

Byteverse_Smart_Contractors

This is the voting system based on blockchain.

  • Government spends crores of rupees in securing and transporting EVMs and huge amounts of money on resources and security at every poll booth.
  • We, as smart contractors are here with the solution to this problem.
  • A voting system based on blockchain technology is a decentralized and secure way to conduct elections.
  • It uses a distributed ledger to record and verifies the votes cast by individuals.
  • It uses smart contracts on blockchain for security and a user-friendly web environment for end-user interaction.
  • Smart Contracts will be made for the voting system. Different contracts will be made for different elections. For example, for the election of the Central Government of India and the State election of Bihar, the contracts will be different.
  • The contracts will contain the function or modifiers which are responsible for:
    1. Registration: Generating hex address for new user.
    2. Verification: Verifies the identity and whether the user has given his vote or not
    3. Counting: Counts the number of votes given to the particular party.
    4. Declaration of result: Declares the result as soon as the time is over.

Implementation of the project

  • A government official will have the login info of his own.
  • A special keyboard-type machine will be used in order to vote, even by the non-techie people.
  • All the system will be set up in cyber café-like area prior to one day of the elections.
  • The people will be allotted a polling booth for giving their votes
  • The people will enter along with their Aadhar/voter-id card and biometric verification will be followed.
  • The biometric verification confirms the identity of the person.
  • Additionally, biometric verification also ensure that the person has already given his vote or not in the same election.
  • An operator will activate session for voting by his biometric verification.
  • The voting will be done through a special EVM type of keyboard for convenient usage.
  • As soon as voting of a particular person is done the session ends and the operation will again activate the session for next voting.

Video link of the Project Walkthrough: https://drive.google.com/drive/folders/17NSuqpJZPntP7yEpU9ylnc5xmSpBYNc0?usp=share_link

Dependencies used in the project

Getting Started with Create React App

This project was bootstrapped with Create React App.

Available Scripts

In the project directory, you can run:

npm start

Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.

The page will reload when you make changes.
You may also see any lint errors in the console.

npm test

Launches the test runner in the interactive watch mode.
See the section about running tests for more information.

npm run build

Builds the app for production to the build folder.
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.
Your app is ready to be deployed!

See the section about deployment for more information.

npm run eject

Note: this is a one-way operation. Once you eject, you can't go back!

If you aren't satisfied with the build tool and configuration choices, you can eject at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.

You don't have to ever use eject. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.

Learn More

You can learn more in the Create React App documentation.

To learn React, check out the React documentation.

Code Splitting

This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting

Analyzing the Bundle Size

This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size

Making a Progressive Web App

This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app

Advanced Configuration

This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration

Deployment

This section has moved here: https://facebook.github.io/create-react-app/docs/deployment

npm run build fails to minify

This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify

Android Development

A new Flutter project.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

  • Wallet is required to deploy the contract of the voting.

The following dependencies are used to implement in linking the contract with front-end

Nodes Version
@types/jest 26.0.24
@types/node 16.3.1
@types/react 17.0.14
@types/react-dom 17.0.9
babel-polyfill 6.26.0
babel-preset-env 1.7.0
babel-preset-es2015 6.24.1
babel-preset-stage-2 6.24.1
babel-preset-stage-3 6.24.1
babel-register 6.26.0
bootstrap 4.3.1
chai 4.2.0
chai-as-promised 7.1.1
chai-bignumber 3.0.0
identicon.js 2.3.3
react 16.8.4
react-bootstrap 1.0.0-beta.5
react-dom 16.8.4
react-particles-js 3.5.3
react-scripts 2.1.3
react-tsparticles 1.31.2
solc 0.8.19
truffle 5.1.39
typescript 4.3.5
web3  1.2.11
@testing-library/jest-dom 5.16.5
@testing-library/react 13.4.0
@testing-library/user-event 13.5.0
react 18.2.0
react-circular-progressbar 2.1.0
react-dom 18.2.0
react-scripts 5.0.1
web-vitals 2.1.4

The dependencies used in developing the app.

Nodes Version
cupertino_icons 1.0.2
font_awesome_flutter: 0.4.0
marquee 2.2.3
syncfusion_flutter_gauges 21.1.39
simple_gradient_text 1.2.4
scroll_loop_auto_scroll 0.0.5

Screenshot of the Interface

Interface of the App

WhatsApp Image 2023-04-16 at 15 42 06

WhatsApp Image 2023-04-16 at 15 34 45

WhatsApp Image 2023-04-16 at 15 34 44

WhatsApp Image 2023-04-16 at 15 34 44

Interface of the Web

Screenshot 2023-04-16 153839

Screenshot 2023-04-16 153918

Screenshot 2023-04-16 153945

Screenshot 2023-04-16 154002

Screenshot 2023-04-16 154025

Interface of the Voting Portal

Screenshot 2023-04-16 175417

About

This is the voting system based on blockchain.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published