{"id":13693831,"url":"https://github.com/aranja/rakning-c19-app","last_synced_at":"2026-02-18T16:30:23.947Z","repository":{"id":38905664,"uuid":"249701738","full_name":"aranja/rakning-c19-app","owner":"aranja","description":"App that helps to analyse individuals’ travel and trace their movements when cases of infection arise.","archived":false,"fork":false,"pushed_at":"2023-01-26T19:02:39.000Z","size":3936,"stargazers_count":239,"open_issues_count":30,"forks_count":31,"subscribers_count":19,"default_branch":"master","last_synced_at":"2024-11-12T20:46:11.401Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://covid.is/app","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aranja.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-03-24T12:25:34.000Z","updated_at":"2024-07-25T15:12:59.000Z","dependencies_parsed_at":"2023-02-14T21:46:02.390Z","dependency_job_id":null,"html_url":"https://github.com/aranja/rakning-c19-app","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aranja%2Frakning-c19-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aranja%2Frakning-c19-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aranja%2Frakning-c19-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aranja%2Frakning-c19-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aranja","download_url":"https://codeload.github.com/aranja/rakning-c19-app/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252126648,"owners_count":21698964,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T17:01:18.737Z","updated_at":"2026-02-18T16:30:23.872Z","avatar_url":"https://github.com/aranja.png","language":"JavaScript","funding_links":[],"categories":["💾 Software","Misc","Health"],"sub_categories":["Apps","React Native","Contact Tracing"],"readme":"# Rakning C-19 App\n\nRakning C-19 is an app that can be downloaded voluntarily and facilitates the contact tracing process amidst the ongoing Covid-19 pandemic in Iceland.\n\nWith the user's consent the app keeps their location data. In case the contact tracing team of the Department of Civil Protection and Emergency Management needs to track someone's movements, they will be asked to upload their location data.\n\nThis would allow for the tracing team to help retrace a user's movements for the last two weeks and increase the likelihood of identifying individuals you might have been in contact with. \n\n## Setup\n\nMake sure you have a [Node 12+](https://nodejs.org/en/) and [Yarn](https://yarnpkg.com/) set up on your machine.\n\nThen go to the [React Native Environment Setup](https://reactnative.dev/docs/environment-setup) page, click the `React Native CLI Quickstart` tab, then select your `Development OS` and `Target OS` to get a detailed guide to configure your machine for app development.\n\nFinally, install the project dependencies:\n\n```\nyarn install\n```\n\n## Run instructions for iOS:\n\n```\nyarn ios\n```\n\nor:\n* Open MyTestApp/ios/MyTestApp.xcworkspace in Xcode or run \"xed -b ios\"\n* Hit the Run button\n\nYou need XCode and an Apple developer account to run this on device.\n\n### Troubleshooting\n\nIf you get this error when building the project for iOS:\n\n```\nerror: /Users/pedroteixeira/projects/rakning-c19-app/ios/Pods/Target Support Files/Pods-Rakning/Pods-Rakning.debug.xcconfig: unable to open file (in target \"Rakning\" in project \"Rakning\") (in target 'Rakning' from project 'Rakning')\n```\n\nTry running `yarn prepare`, which should fix this issue.\n\nFor other CocoaPods issues, it sometimes helps to go into the `ios` folder and run:\n\n```.env\npod install --repo-update\n```\n\n## Run instructions for Android:\n\nHave an Android emulator running (quickest way to get started), or a device connected.\nThen run:\n\n```\nyarn android\n```\n\n## FAQ\n\n### How can I get the app?\n\nThere are now three ways to get this app:\n\n* iOS: [App Store](https://apps.apple.com/is/app/rakning-c-19/id1504655876)\n* Android: [Play Store](https://play.google.com/store/apps/details?id=is.landlaeknir.rakning)\n* Android APK: [App Center](https://install.appcenter.ms/orgs/covid-iceland/apps/covid-19-tracking-android/distribution_groups/public)\n\nNever install the app from places not listed here or on\n[covid.is](https://covid.is), since they can be spreading a modified\nversion of the app which could compromise your privacy and security.\n\n### How does Rakning C-19 work?\n\nIt authenticates users with their phone number. It stores the user's\nphone number, their locale and push notification token on the server.\n\nThen the app requests permission to track the user's location in the\nbackground. Geolocation updates are then stored on-device in a SQLite\ndatabase.\n\nWhen the backend receives a request for data, it marks the user for data\ncollection and triggers a push notification.\n\nNext time the user opens the app, it checks if there's a data request\nand allows the user to approve the request before sending 14 days of\ngeolocation data to the backend.\n\nFor more information, check out the [System Architecture](https://docs.google.com/presentation/d/1SxGX7pXXMBcO2h7iYRRWI2Ru1oHRV19hZqU2RFYlXK4).\n\n### How does Rakning C-19 track the user's location?\n\nRakning C-19 uses a React Native plugin called [React Native Background Geolocation](https://github.com/mauron85/react-native-background-geolocation).\nBehind the scenes, it calls different APIs on Android and iOS to get geolocation updates,\neven when you don't have the application opens.\n\nThese geolocation updates are stored in an SQLite database that the plugin manages.\n\nThe logic is in `src/tracking.js`.\n\n### When does the app send geolocation data to the backend?\n\nOnly after the user explicitly approves a data collection request.\n\nThe logic is in `src/router/logged-in/screens/RequestDataScreen.js`.\n\n### Why Open Source?\n\nThe app is now open source under the MIT License. There are three main reasons:\n\n* We want to encourage and facilitate cooperation between nations through this pandemic.\n* We want more contributors to make the app better. It’s been a volunteer project from the beginning, so we have limited time to work on it.\n* We want total transparency in how the app works precisely.\n\nPlease help us improve the app for all.\n\nWe're still evaluating if/how we want to open source the API.\n\n### Who is behind this project?\n\nThe project is a private initiative developed in a close collaboration with the [Icelandic Directorate of Health](https://www.landlaeknir.is/english/) and the [Department of Civil Protection and Emergency Management](https://www.almannavarnir.is/english/).\n\nIt was produced by [Aranja](https://aranja.com/), [Decode](https://www.decode.com/), [Kolibri](https://www.kolibri.is/), [Samsyn](http://www.samsyn.is/), [Sensa](https://sensa.is/) and [Stokkur](https://stokkur.is/).\n\nThe project was made better with consulting from [Digido](https://digido.is/), [Magga Dóra](https://www.mennsk.is/), [Svavar Ingi Hermannsson](https://www.security.is/) and [Syndis](https://www.syndis.is/).\n\nAll respective parties gave their work to this project.\n\n### Do you accept contributions?\n\nWe'll gladly accept contributions. Check out the issues for places to start.\n\n### Is the app secure?\n\nWe have reviewed the code multiple time and received security audits from third party vendors. However, there is no such thing as 100% security.\n\nIf you believe you’ve found a security vulnerability, please send it to us by emailing security@aranja.com. Please include the following details with your report:\n\n* Description of the location and potential impact of the vulnerability.\n* A detailed description of the steps required to reproduce the vulnerability (POC scripts, screenshots, and compressed screen captures are all helpful to us).\n\nPlease practice Responsible Disclosure and give us sufficient time to deploy a fix to our users. \n\n### Translations\n\n- Russian - courtesy of [Constance Pomuran](https://www.facebook.com/cpomuran)\n- Thai - courtesy of [Pidsinee Disa Einarsdottir](https://www.linkedin.com/in/pidsinee/)\n- French - courtesy of [Jérémy Barbet](https://github.com/jeremybarbet)\n- Spanish - courtesy of [Pablo Anaya](https://www.linkedin.com/in/pjanaya/)\n- Japanese - courtesy of [Yuka Ogura](https://www.facebook.com/YukaOgura55)\n- Filipino - courtesy of [Ronald Fatalla](https://www.facebook.com/ronald.fatalla)\n- Arabic - courtesy of [Ouhta Youssef](https://www.facebook.com/euskal.sinapellidos)\n- Farsi - courtesy of [Younes Abghoui](https://www.linkedin.com/in/younesabghoui/)\n- Lithuanian - courtesy of [Tomas Petrauskas](https://www.facebook.com/tomas.petrauskas.734)\n- Want to translate to your own language? Please open an issue 💜","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faranja%2Frakning-c19-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faranja%2Frakning-c19-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faranja%2Frakning-c19-app/lists"}