Giter VIP home page Giter VIP logo

fayeah / covid-safe-paths Goto Github PK

View Code? Open in Web Editor NEW

This project forked from path-check/safeplaces-dct-app

0.0 0.0 0.0 14.91 MB

COVID Safe Paths (based on Private Kit) is an open and privacy preserving system to use personal information to battle COVID

Home Page: https://covidsafepaths.org

License: MIT License

JavaScript 83.52% Starlark 0.86% Java 1.82% Ruby 2.51% Objective-C 3.17% Shell 4.00% Python 2.16% TypeScript 0.17% Batchfile 1.79%

covid-safe-paths's Introduction

COVID Safe Paths Android and iOS build on MacOS

applying the technology and philosophy of Private Kit to COVID

Help us stop COVID-19.

We’re building the next generation of secure location logging to preserve privacy and #flattenthecurve

Location logs provide time-stamped records of where users have been, allowing them to share information with health officials accurately and quickly. This helps support contact tracing efforts to slow the spread of the virus.

What’s truly special about Safe Paths, though, is its privacy protection. Data never leaves user's device without their password entry and explicit consent. The location log generated by Safe Paths cannot be accessed from outside the user’s device, meaning data transfer occurs only if the user chooses to share it with the researcher.


Safe Paths is a ‘privacy-first’ app that allows you to log your GPS trails on your own phone. The information is stored locally and never shared with anyone (not even with us or MIT) until you explicitly decide to manually export the data. The location log generated by Safe Paths cannot be accessed from outside the user’s device. Location information can be imported and exported by the user and used in other projects and applications.

Safe Paths logs your device’s location once every five minutes and stores 28 days of data in under 100KB of space – less space than a single picture. But what is truly exciting about Safe Paths is its privacy protection.

Home page: https://covidsafepaths.org and https://safepaths.mit.edu

Private Kit WhitePaper: Apps Gone Rogue: Maintaining Personal Privacy in an Epidemic

Downloads for COVID Safe Paths: coming soon!

Downloads for Private Kit: Google Play | Apple Store

Development Overview

This is a React Native app version 61.5

Architecture

Please refer to docs/Private Kit Diagram.png for a basic overview on the sequencing of generalized events and services that are utilized by Safe Paths.

Developer Setup

Refer to and run the dev_setup.sh (Linux/MacOS) or dev_setup.bat (Windows) for needed tools.

iOS Configuration - First Time Setup

  1. Move to ios directory and run pod install
  2. If you have any trouble with packages not found, try react-native link from project directory.
  3. Look at running commands below.

Google Maps API Key

You will need to generate a Google API key in order for the mapping features to work correctly. Refer to this guide guide in order to create the API key.

Once created you will need to add it to two different places in the project. One for Android and one for iOS.

  • Android - open android/app/src/main/AndroidManifest.xmland search for com.google.android.geo.API_KEY. Add your key to the android:value property.
  • iOS - open ios/SafePaths/AppDelegate.m and search for GMSServices provideAPIKey and replace line with [GMSServices provideAPIKey:@"YOUR_API_KEY"];

Running

Install modules: yarn install (note yarn does a better job at installing dependencies on macOS, and it's mandatory to install Yarn on the local machine to run this project)

To run, do:

npx react-native run-android

or

npx react-native run-ios --simulator="iPhone 8 Plus"

NOTE: In some cases, the abovementioned procedure leads to the error Failed to load bundle - Could not connect to development server. In these cases, kill all other react-native processes and try it again.

Contributing

Read the contribution guidelines.

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.