|
1 | 1 | # Forecast Eval
|
2 | 2 |
|
3 | 3 | Epiforecast scoring and interactive evaluation tools.
|
| 4 | +https://delphi.cmu.edu/forecast-eval/ |
| 5 | + |
| 6 | +Code on the `dev` branch appears in staging: https://staging.delphi.cmu.edu/forecast-eval/ |
| 7 | +Username and password are included in the [meeting notes doc](https://docs.google.com/document/d/1q8sKrbjzymEDsWQ9mUomOZ255-_5W6RPGgTdFlHmpmE/edit) |
4 | 8 |
|
5 | 9 | ## Steps to contribute
|
6 | 10 | 1. Create a new branch off of `dev`
|
7 | 11 | 2. Create a pull request into `dev`
|
8 | 12 |
|
9 |
| -Branch `main` is the production branch. Branch `dev` will be merged into main when a release is ready. |
| 13 | +Branch `main` is the production branch. Branch `dev` will be merged into main when a release is ready. See below for instructions on how to create a release. |
| 14 | + |
| 15 | + |
| 16 | + |
| 17 | +**Note:** the easiest way to view and develop this project locally is to use RStudio and run the RShiny app from inside the IDE |
| 18 | + |
| 19 | +<img width="1111" alt="Screen Shot 2021-08-30 at 10 56 59 AM" src="https://user-images.githubusercontent.com/14190352/131359925-3b460d21-b9aa-4a40-a691-cd705ab98431.png"> |
| 20 | + |
| 21 | +Alternatively, ... |
10 | 22 |
|
11 | 23 |
|
12 | 24 | ## Building
|
@@ -52,6 +64,21 @@ git push origin v1.0
|
52 | 64 | Create a PR into `main`.
|
53 | 65 | After code is merged to `main`, perform cleanup by merging `main` into `dev` so that `dev` stays up to date.
|
54 | 66 |
|
| 67 | +# Code Structure |
| 68 | + - `workflows` contains the weekly data pipeline workflow action (`s3_upload_ec2.yml`) and the `main.yml` that runs on branch merge |
| 69 | + - `Report` contains the scoring and data upload scripts that run weekly |
| 70 | + - `dashboard` contains all the code for the RShiny dashboard |
| 71 | + - `www` contains the styling and the assets |
| 72 | + - `app.R` is the main RShiny file with the UI and server functions |
| 73 | + - `common.R` is for code shared between the app and the download feature |
| 74 | + - `export_scores.R` contains the code for the download feature |
| 75 | + - `about.md` contains the code for the "About" tab in the dasboard (other .md files contain explanations of the scores and other text info that appears in the app) |
| 76 | + - `docker_buid` contains the `Dockerfile` specifying the version of the `covidcast` docker image to use |
| 77 | + - `docker_dashboard` contains the `Dockerfile` and `shiny_server.conf` for the RShiny app |
| 78 | + - ***Note: when adding a new package dependency to the app, it must be specified in this Dockerfile*** |
| 79 | + - `DESCRIPTION` is where the version number is updated for each release |
| 80 | + - `Makefile` contains all commands to build and run the dashboard and score and upload the data |
| 81 | + |
55 | 82 | ## Note on Scoring Script
|
56 | 83 |
|
57 | 84 | When updates are made in the evalcast package that affect the scoring script, the covidcast docker image must be rebuilt by kicking off the workflow here: https://github.com/cmu-delphi/covidcast-docker/actions/workflows/main.yml. Ensure that the changes in evalcast will be compatible with the dashboard and will not cause errors - when the scoring script is run on these changes the results show up automatically in prod.
|
|
0 commit comments