Git Product home page Git Product logo

blockchain-vs's Introduction

BlockChain-VS

About -

app-icon

This app is a block-chain based voting system app which uses the ethereum's ropsten testnet to perform transactions.

AS OF 13-04-22, THIS PROJECT IS FUNCTIONAL.

Files used for contract interaction are -

This file is responsible for all the main transactions -

app/src/main/java/com/kenetic/blockchainvs/contract_classes/VoteContractDelegate.kt

This contract accepts multiple votes. (auto-generated) -

app/src/main/java/com/kenetic/blockchainvs/contract_classes/contract_auto_generate/ContractAutoGenTesting.java

This contract does not accept multiple votes. (auto-generated) -

app/src/main/java/com/kenetic/blockchainvs/contract_classes/contract_auto_generate/ContractAutoGenOriginal.java

This file contains the function encoders for state changing functions. These were generated to counter faulty web3j functions which were unable to perform state changing transactions on the Test-Net servers -

app/src/main/java/com/kenetic/blockchainvs/contract_classes/AlternateTransactionHandler.java

This file is a test class which automates the signup process -

app/src/androidTest/java/com/kenetic/blockchainvs/ExampleInstrumentedAlternateTransactionHandler.kt

Contract code -

The link to the repository with the contract and the generated wrappers are here

Sample screen shots / Guide -

Sign up screen -

Here, the user can sign up using their email and phone number. This page is for demo purpose only, programatically it doesn't create an account remotely yet. However, it does store the details locally.

Login Screen -

this is the login screen, use the regustered email and password to login to the account. The sign Up process is discussed later on.Login can also be done using fingerprint if the option is enabled.

The main screen's side menu -

here, you can find the options for the account settings such as Log In, Log Out, Sign Up, Remove Account, Switch Account. Below this you will find the Contract Interface. This will be discussed later on.

The Contract Interface -

This page requires you to be signed in. Sign-in in can be done using either the regisered email and password, or your fingerprint of enabled. Once signed in, you can Access the entire solidity contract which has already been set up in the ropsten test network. Transactions that require a fee will ask for fingerprint verification. The Add Me To Voter's List is a test option only. Performing that action would independently change your account's status to that of one that has performed votiing.

Transaction Receipt -

performing a transaction also requires a fingerprint. Once that is done, the user can thenwait for the transaction to be performed. Once that is done, a receipt is genarated.

Receipt database -

Once the receipt is generated it is stored into the app's database. It can then be viewed from the app's mainscreen whenever required.

Ropsten results -

This is the transaction receipt generated by the etherscan website after the transaction is complete.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.