
This research project provides solutions to identified problems such as, Developing a voting system for including donors, beneficiaries and donors, as well as a token specially for the charity. Provide solutions to beneficiaries who without have a digital wallet, from charitable organisations with the confidence of donors and record all votes from donor to beneficiary and organisation to make a decision and enhance the trust of other new donors in that organisation or beneficiary. The main components of our system implementation are as follows
Remix IDE
Remix acts as a learning and teaching tool for Ethereum as well as a platform we use solidity for whole contract writing process.
All our contracts are created by using Remix IDE and solidity language. Users information and relevant data stored in this contract.


donor contract

ABI json format
Application Binary Interface (ABI)
The JavaScript object that represents the smart contract and all of its functions and events is created by the web3. js utilizing this json interface.
​
Copy the ABI json format and place it in the flutter donor.json file. This should be done every contract when any changes happen in the contract source code.
.png)
Administrative contract
Administrative contract is a solidity based contract written in remis IDE and All transactions happen through this administrative contract.

Administrative contract
.png)

Metamask digital wallet
Metamask digital wallet
So in our project we also use metamask digital wallet, It allows users to access their Ethereum wallet through a browser extension.
.png)
Infura
Infura project contains project ID and project secret. Copy the project id to the object of web3 client class inside the client.dart file

Infura project details
.png)

MainFuncions.dart
.png)
ABI.json
Front End
This dart file contains main functions such as, call function, pass data to the contract, load contract the contract and ask - retrieve data from the contract.
Copied ABI json format to the json file of flutter app for contract functions execution.
.png)
Etherscan
All the transactions are recorded here and ability to check transaction details.

Etherscan
.png)