The problem the project solves

One of the main reasons why COVID-19 is so infectious is it's long incubation period, and the fact that a person can be infectious before they even show any symptoms. This makes it hard for a person to know if they have been in contact with an infected person, especially since the infected person might find out that they are infected up to 14 days since the initial contact.

With the _ Covid Contact Notifier _, the aim is to, through user consent and respecting the user's privacy, notify the user if they were in contact with a person who was later-on diagnosed with COVID-19. Through this app, the user can also see if they need to be tested, and to receive the necessary information on where and how to perform these tests.

Our hope is that, with this app, we can help flatten the curve and contain the spread of the virus by identifying risks by being in contact with an infected person, and providing up-to-date information whether the user needs to be tested.

The solution it bring to the table (including technical details, architecture, tools used)

We were inspired by the partnership of Apple and Google to work together to find a solution that would help during the pandemic by providing API for contact tracing.

With the above in mind, we have developed a mobile app for Android and iOS that would use the API developed by Apple and Google, and a Diagnosis Server that holds Diagnosis Keys. These Diagnosis Keys help devices calculate if they have been in contact with an infected person, while at the same time the Diagnosis Keys do not hold any user information, such as personal information or location.

The solution is composed of the following:

  • Mobile app - written in React Native
  • Back-end Diagnosis Server - written in .Net Core, used to gather Diagnosis Keys from the mobile apps, and provide Diagnosis Keys to mobile apps requesting the keys. Exposes an API that the mobile apps can use.
  • Database holding the Diagnosis Keys - database used is Microsoft SQL Server.

What was done during the weekend

Over the weekend, our team has written a prototype for a contact tracing app and a Diagnosis Server.

Our main goal with this prototype is to show how a React-Native app can use the Google and Apple's API to develop an app for a Public Health Authority, which would communicate with a Diagnosis Server to provide the necessary contact Diagnosis Keys to the users. We have achieved this over the weekend, and put it on GitHub, so that other people can also use that source code to expand on it and create apps that would work with their region.

Because the Google and Apple's API is still in progress (due to release in May), the mobile app uses an interface that are currently calling mock values. After the API is released, the source code will need to be changed to target the actual APIs.

The solution’s impact to the crisis

The solution's impact is providing means of slowing down the spread, by making people aware, as soon as, possible if they have been in contact with an infected person in the past 14 days. This helps the user know if they need to be tested, and if they need to be self-quarantined in order to slow down the spreading of the virus.

The goal is to flatten the curve as much as possible, by giving people the means to test as soon as they know that they have been in contact with an infected person.

The necessities in order to continue the project

The necessities are the following:

  • Google and Apple to release their contact tracing APIs (release is scheduled for May).
  • Public Health Authorities to use the prototype as a basis to create apps that use these APIs.

The value of your solution(s) after the crisis

  • After the crisis, the app will not be used, since the pandemic would be over. However, this can be in case of any future epidemics or pandemics, in the instances where it is necessary to notify people if they have been in contact with another person that is infected.

The URL to the prototype [Github, Website,...]

The URL to the pitch-video

https://youtu.be/-MScqJ_MDPQ

Built With

Share this project:

Updates