Skip to content

Covid dashboard pulls data from The COVID Tracking Project API and displays it in comprehensive graphs

Notifications You must be signed in to change notification settings

jt0398/Covid-Dashboard

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Covid Dashboard

Deploy a microservice application to AWS ECS using CloudFormation. This project uses data published from The COVID Tracking Project API.

.
├── README.MD                       <-- This instructions file
├── client                          <-- Source code for React dashboard application
│  └── src
│  └── Dockerfile                   <-- Docker build commands
│  └── package.json                 <-- React dependencies and scripts
├── cloudformation                  <-- AWS CloudFormation templates for CI/CD
|── server
│  └── cumulative-trend-service     <-- Source code for API (cumulative daily stats)
│       └── app.js                  <-- API routes
│       └── server.js               <-- Express server
│       └── package.json            <-- NodeJS dependencies and scripts
│  └── daily-trend-service          <-- Source code for API (daily stats)
│       └── app.js                  <-- API routes
│       └── server.js               <-- Express server
│       └── package.json            <-- NodeJS dependencies and scripts
│  └── national-total-service       <-- Source code for API (national stats)
│       └── app.js                  <-- API routes
│       └── server.js               <-- Express server
│       └── package.json            <-- NodeJS dependencies and scripts
│  └── poll-data-service            <-- Source code for CRON job that pulls
|                                       data from The COVID Tracking Project API
│       └── server.js               <-- Express server
│       └── package.json            <-- NodeJS dependencies and scripts
├── docker-compose.yml            <-- Docker configuration for local DEV containers

AWS Services Used

  • CodePipeline for CI/CD
  • S3
  • ALB
  • Auto Scaling
  • ECS and ECR Repository
  • CloudWatch Logs
  • RDS databases

Other Tech Used

  • RabbitMQ
  • Docker
  • PostgreSQL
  • Node
  • React

Requirements

Using this Application

Run the following commands in the project root directory

docker-compose up

To stop all docker containers

docker-compose down

Deploy to AWS

  1. Create a GitHub Personal access token if you do not have one
  2. Login to AWS console
  3. Create an EC2 Key Pair if you do not have one
  4. Create CloudFormation stack in order:
    • Public VPC
    • RDS Databases
    • CodePipeline

Provide the required app parameters (see parameter details below).

Parameter Details

Outstanding Items

  • Use AWS Systems Manager Parameter Store for some of the CloudFormation parameters

Contributors

  1. Judy Tan
  2. Sachin Jhaveri

About

Covid dashboard pulls data from The COVID Tracking Project API and displays it in comprehensive graphs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 89.9%
  • HTML 5.0%
  • Shell 2.1%
  • CSS 1.6%
  • Dockerfile 1.4%