Coronastatus (archived)
Report your health status to get a better overview of COVID-19 in your country
What is this?
We don't know how many people have COVID-19. So we made a website where people can self-report symptoms. We plot the submissions on a map and show graphs with trends.
How can I help?
We need people who can help translate the site, develop new features, project leads for new and existing countries, and much more. Join our group chat: https://t.me/onzecorona
In what countries have you launched Coronastatus?
๐ณ๐ด Norway: https://coronastatus.no๐ณ๐ฑ The Netherlands: https://coronastatus.nl๐ธ๐ฐ Slovakia: https://coronastatus.sk๐ฉ๐ฐ Denmark: https://coronastatus.dk๐จ๐ด Colombia: https://coronastatus.co๐ฎ๐น Italy: https://coronastatus.it๐ซ๐ท France: https://coronastatus.fr๐ฒ๐ฝ Mexico: https://coronastatus.mx๐บ๐ธ United States of America (USA): https://coronastatus.us๐บ๐ฆ Ukraine: https://coronastatus.org.ua๐ช๐ธ Spain: https://coronastatus.es๐ง๐ท Brazil: https://coronastatus.net.br๐จ๐ฆ Canada: https://coronastatus.ca๐ฆ๐บ Australia: https://coronastatusau.org๐ธ๐ฌ Singapore: https://coronastatus.sg๐ฆ๐ท Argentina: https://coronastatus.com.ar๐ฒ๐พ Malaysia: https://coronastatusmy.org๐ฒ๐น Malta: https://coronastatusmt.com๐จ๐ฑ Chile: https://coronastatus.cl๐ฎ๐ณ India: https://corona-status.in๐ต๐น Portugal: https://coronastatus.pt๐น๐ท Turkey: https://coronastatustr.com๐ฑ๐น Lithuania: https://coronastatus.lt๐ณ๐ต Nepal: https://coronastatusnp.com๐จ๐ฟ Czech Republic: https://corona-status.cz๐ฎ๐ฉ Indonesia: https://coronastatus.id๐ต๐ญ Philippines: https://coronastatus.ph๐ณ๐ฌ Nigeria: https://coronastatus.ng๐ท๐ด Romania: https://coronastatus.ro๐ธ๐ช Sweden: coming soon๐ง๐ช Belgium: coming soon๐ฎ๐ธ Iceland: coming soon๐จ๐ญ Switzerland: coming soon๐ฉ๐ช Germany: coming soon๐ง๐ฉ Bangladesh: coming soon- ... want one for your country? Join our community: https://t.me/onzecorona
Why?
The government is working on this, but they're too slow in getting something out fast.
Mentions in the media
Title | Country | URL |
---|---|---|
Self-report system for monitoring COVID19 needs to be in place immediately! | Read here | |
Are you ill? Health services will soon let you self-report symtoms. | Read here | |
Developers take on COVID-19 with open-source projects, hackathons | Read here |
Who's behind this?
A bunch of developers from around the world that wanted to help out. This is not an official website from the health services.
How can I contribute?
Join our Telegram group chat here: https://t.me/onzecorona or reach out on [email protected]
Click on "Issues" in the menu above to see what we need help with.
How to launch the site in your country
Adding a new language should be pretty straightforward. If you need help, you can always ask in the Telegram group chat or contact us by email. The following is needed in order to set up a new language:
- Set up a new config file:
cp config.example.json config.json
.COUNTRY_CODE
should be the Alpha-2-code listed here: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes - In
app/locales
you have to add- Translations for all the sentences in
en.json
. The translations should be placed in{LOCALE}.json
(LOCALE
should be one of the locales from here). The keys are the same in all the{LOCALE}.json
-files, and the values are the translations. We recommend translating everything in the file first, and then testing the site in order to verify that the translations look ok in context. Some texts conains{{ SOME_VALUE }}
. The content in{{ }}
will be replaced with a country specific variable. - sort the locales alphabetically by keys. You can use a helper script to sort it:
yarn sort:locales
- Translations for all the sentences in
- In
app/countrySpecific/{COUNTRY-CODE}/
you have to add (follow filename convention of the files that are already there):config.ts
. Copy fromapp/countrySpecific/en/config.ts
, and change the values so that it fits your country (ask in Telegram if you wonder what the different values mean).text-variables.ts
. Copy fromapp/countrySpecific/en/text-variables.ts
and fill in variables for the country you add. These values will always be rendered, regardless of which locale the user use.- A word list that is used for generating unique profile links. If you are ok with english words, you can use this. If the word list contains between 1000 and 10000 words, you should set
PASSCODE_LENGTH: 4
in the config. If it contains more than 10000 words,PASSCODE_LENGTH: 3
should be sufficient. - List of municipalities (we can help with this Check Here).
- List of postal code coordinates (we have a script for this Check Here).
- Configure URL paths in
app/domain/urls.ts
(set up for theCOUNTRY_CODE
you added) - Write a privacy statement in
app/views/privacy-statement/{COUNTRY_CODE}-privacy-statement.ejs
. - Add a mapping from the locale you added to a corresponding flag in
app/domain/flags.ts
. The code (two letters) of the flag can be found here. - You also need a domain (preferably
coronastatus.tld
if it is available), and a server to run the app on. We can assist you with setting this up. - Generate images for social media etc. using this guide
- We can host the site for you if you want that. Just send a message to us in Telegram. This makes it easier to maintain and deploy new changes to all the sites. We will give you access to the server as well. If you insist on hosting it yourself, please add your name to the README here
Start developing
You can either install and run everything on your own machine or build a docker image and run the the local development environment using docker. Choose one of the ways below that fits best to you:
Developing on your own machine
Prerequisities
Download & install:
Steps
- Clone the repository
git clone https://github.com/BustByte/coronastatus
- Move into the newly cloned directory
cd coronastatus
- Install dependencies with our package manager
yarn
- Create a configuration file from the example provided in this repo.
cp config.example.json config.json
- Start the development webserver
yarn dev
-
Open your browser and navigate to http://localhost:7272/
-
Before you create a pull request run the linter. Warnings are ok, but errors should be fixed.
yarn lint
Developing using docker
Prerequisities
Download & install:
Steps
- Clone the repository
git clone https://github.com/BustByte/coronastatus
- Move into the newly cloned directory
cd coronastatus
- Create a configuration file from the example provided in this repo
cp config.example.json config.json
- Install node modules:
docker-compose run --rm app yarn
- Start the development container & display the container logs:
docker-compose up -d; docker-compose logs -f
-
Open your browser and navigate to http://localhost:7272/
-
Before you create a pull request run the linter. Warnings are ok, but errors should be fixed.
docker-compose exec app yarn lint
Generating social images
Social images (social media share image, Twitter header and generic banner) can be generated by running yarn build:images
while your dev server is running. They will be placed in the static folder, in the language you defined in your config (make sure LOCALE
, BASE_URL
and COUNTRY_CODE
is set correctly). The social-image.png is then automatically linked as social media share image.
โจ
Contributors We're working on updating this section to include everyone who has devoted time and attention to this project. Stay put!