My implementation of EOSIO smart contracts to apply blockchain technology to address the problems and/or expected societal changes related to the COVID-19 pandemic thru Exposure Notifications API.
This repository is a project submitted to EOSIO Virtual Hackathon: Coding for Change
Youtube demo #1: https://www.youtube.com/watch?v=ZSu6OHwAAXY (8:43 mins)
Youtube demo #2: https://youtu.be/eghtSy9Zt8c (3:17 mins)
Youtube demo #3: https://youtu.be/jknyGfeAMXs (1:44 mins)
-
Step 1
Clone repository or download ZIP file -
Step 2
Open a terminal at eosio_exposure_notifications directory -
Step 3
At the opened terminal type: flutter run
Then press enter -
Step 4
Turn on the bluetooth on your mobile device -
Step 5
Wait for EOSIO Public Health Authority App
Then press on 'TURN ON EXPOSURE NOTIFICATIONS' -
Step 6
If you think you have been exposed to COVID‑19 and develop a fever and symptoms, such as cough or difficulty breathing, call your healthcare provider for medical advice. When infected with COVID-19 press on 'NOTIFY OTHERS' -
Step 7
An authorized healthcare provider with valid Owner and Active Private keys will complete the next screen and press 'submit' -
Step 8
You will be notified if you have been exposed to someone who reported a positive COVID-19 result.
This software is inspired by the need of a solution for decentralized contact tracing by merging blockchain technology and Bluetooth technology on Android and iOS mobile devices.
Using Bluetooth technology this app generates and broadcast UUIDs so other users can scan and save such UUIDs.
At the moment of infection the app notify and report the infected UUIDs to the EOSIO blockchain.
User gets alerts when the app algorithm matches a scanned UUID with a reported UUID.
Built with Flutter Mobile UI Framework for Android and iOS.
- Learned how to create an Android/iOS flutter plugin: https://github.com/WebPatient/EOSIOPublicHealthAuthority/tree/master/flutter_exposure_notifications
- Learned how to create and push transactions to EOSIO blockchain programmatically using dart programing language.
- Implement iOS UUIDs scanning native code
- QR code scanning implementation