SwissCovid is the official contact tracing app of Switzerland.
The Decentralised Privacy-Preserving Proximity Tracing (DP-3T) project is an open protocol for COVID-19 proximity tracing using Bluetooth Low Energy functionality on mobile devices that ensures personal data and computation stays entirely on an individual's phone. It was produced by a core team of over 25 scientists and academic researchers from across Europe. It has also been scrutinized and improved by the wider community.
DP^3T is a free-standing effort started at EPFL and ETHZ that produced this protocol and that is implementing it in an open-sourced app and server.
This is a COVID-19 tracing client using the DP3T iOS SDK. This project was released as the released as the official COVID-19 tracing solution for Switzerland, therefore UX, messages and flows are optimized for this specific case. Nevertheless, the source code should be a solid foundation to build a similar app for other countries and demostrate how the SDK can be used in a real app. The app design, UX and implementation was done by Ubique.
This project is truly open-source and we welcome any feedback on the code regarding both the implementation and security aspects.
Bugs or potential problems should be reported using Github issues. We welcome all pull requests that improve the quality the source code.
Please note that the app will be available with approved translations in English, German, French, Italian, Romansh, Albanian, Bosnian, Croatian, Portuguese, Serbian and Spanish. Pull requests for additional translations currently won't be merged.
Platform independent UX and design discussions should be reported in dp3t-ux-screenflows-ch
The full set of documents for DP3T is at https://github.com/DP-3T/documents. Please refer to the technical documents and whitepapers for a description of the implementation.
A description of the usage of the Apple Exposure Notifcation API can be found here.
The project should be opened with the Xcode 11.7 or newer. Dependencies are managed with Swift Package Manager, no further setup is needed.
The project is configured for a specific provisioning profile. To install the app on your own device, you will have to update the settings using your own provisioning profile.
Apple's ExposureNotification Framework requires an entitlement (
com.apple.developer.exposure-notification) that is only be available to public health authorities. You will find more information in the Exposure Notification Addendum and you can request the entitlement here.
This project is licensed under the terms of the MPL 2 license. See the LICENSE file.