Skip to content

yuorme/covid-projections

Repository files navigation

COVID Projections Tracker

Collecting and visualizing current and historical COVID-19 forecast data

🌐 covid-projections.com

COVID Projections Demo

Gitter License: GPL v3 GitHub commit activity GitHub contributors Website

👀 Overview

Covid Projections Tracker is a tool that allows experts to easily track projection accuracy as well as changes in projections over time. Projectons may change as new data is incorporated or when model parameters or frameworks are updated. Covid Projections is under active development, current features are shown here.

Interactive Dashboard:

  • Historical model projections for a given country or region (currently supports IHME and LANL data)
  • Toggle between linear and semi-log plots
  • Select models with forecast dates within a given date range

Data Scraper:

Displaying a model on our website is not an endorsement of model accuracy. We currently display historical trends for IHME and LANL models primarily because they were the first groups to make their data easily accessible.

  • IHME - Non-linear mixed effects curve-fitting.
  • LANL - Statistical dynamical growth model accounting for population susceptibility.

🖥️ Quick Start

Covid Projections Tracker is built in Python 3.8.2 🐍. The dashboard uses Dash and Plotly to generate a Flask/React.js web application. The scraper is built using requests and BeautifulSoup with pandas for data manipulation.

Install Packages

Clone the repo and use pip or conda to install required packages:

pip install requirements.txt

Run Scraper

Data should be included but the scraper can be run using:

python projections-scraper.py

Run Dashboard

To run locally, you'll need to set debug mode to True in config.py. This prevents HTTPS protocol from being enforced. Also, you need to add the postgres variables to your environment (COVID_PRED_POSTGRES_PASS,COVID_PRED_RDS_URL,COVID_PRED_RDS_SSL_CERT). We suggest creating a .env file and using python-dotenv in config.py

# config.py
from dotenv import load_dotenv
load_dotenv()

Then run python app.py and then point your browser to 127.0.0.1:5000

About

COVID-19 Projections Data and Dashboard

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published