StatCan / R-dashboards

Example R dashboards to run in R Shiny backed by Azure Files

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

R-dashboards


**** PLEASE READ - IMPORTANT / URGENT ****

Advanced Analytics Workplace (AAW) will soon be decommissioning the R-Shiny Dashboards. Users / Owners of the current dashboards will be asked (have been asked) to transfer their projects to the Data Visualizations in Dissemination Division at Statistics Canada.

Your point of contact will be Joseph Prince. Joseph and his team have already started to transfer most of the AAW R-Shiny Dashboards. All that is required is too ZIP your current r-dashboard and send it to Joseph Prince (joseph.prince@canada.ca ) to get the process started.

If require any help on zipping your current dashboards, please do not hesitate to ask.

Note: Please be advise that the current dashboards will be deleted once all the current dashboards will be transfered to Dissemination Division. At that point, a deadline will be set for the deletion of those Dashboard in our Github Repo.


This repo contains R-shiny dashboards that are hosted on an R-shiny server. Each subdirectory here contains a different dashboard, with dashboards accessible at https://shiny.covid.cloud.statcan.ca/<DASHBOARD_DIR_NAME>.

⚠ This service may change
Helping you publish your visualizations is a core part of our service, and we will keep doing that. However, the means of submitting/updating Shiny projects – and the URLs they get published to – are likely to change as we improve this service.

Submitting a Dashboard

To submit your own dashboard:

  1. Fork this R-dashboards repo.
  2. Add your dashboard to an unclaimed top level directory (similar to /covid-19-dashboard and others).
    • Note that the name you choose here also sets your dashboard's URL (https://shiny.covid.cloud.statcan.ca/my-well-named-dashboard).
    • You need to embed your dashboard's data directly in your Shiny project (for example, see /ev-data-viz/data). A more flexible solution is in the works but not yet completed.
    • ⚠ If your data is large (more than a few MB) please discuss with us first.
    • Do one of the following:
      • (Optional but appreciated - this will speed up our review/release process.) Test your dashboard against the central shiny implementation by following the Deployment Testing Instructions section below. In particular, identify any packages that are missing from the shiny repo and note them in the text of your PR.
      • Check this packages file to see if all R packages you use are included in the list. If any are missing, note them in the text of your PR.
  3. Open a PR to merge your fork into R-dashboards:master. Start your PR title with "[WIP]" to indicate your work in progress and remove it once you are ready to merge.

Testing your Dashboard

To test any new/updated dashboards prior to deployment, do the following:

  1. Submit a pull request to the R-dashboards repo with your new/updated dashboard.

  2. Clone the PR for review from the R-dashboards repo (replace <PR_NUMBER> with the PR number from GitHub).

    pr_number=<PR_NUMBER>
    git clone https://github.com/StatCan/R-dashboards.git
    cd R-dashboards
    git fetch origin pull/$pr_number/head:pr$pr_number
    git checkout pr$pr_number
    # Save this directory for later
    path_to_r_dashboards=`pwd`
    cd -
  3. Clone and build the shiny server locally. You need Docker installed to run it.

    git clone https://github.com/StatCan/shiny.git
    cd shiny
    docker build . -t shiny-server-test
    # Forward the port so you can view it locally
    # Map a volume to the above dashboard directory
    docker run \
      -p 3838:3838 \
      -v $path_to_r_dashboards:/srv/shiny-server \
      shiny-server-test
  4. Go to 127.0.0.1:3838 and test your dashboard.

    • If there are any bugs, fix them locally and iterate above until solved.
    • Tip: If a package is missing, update the Shiny server Dockerfile to import packages from an additional PACKAGE_temp and put any new packages there while testing. This saves time by avoiding reinstalling previously installed packages. Once you have all the packages you need, edit the PACKAGES file directly to include those you need and remove the PACKAGE_temp file.

About

Example R dashboards to run in R Shiny backed by Azure Files

License:Other


Languages

Language:R 56.0%Language:HTML 43.4%Language:CSS 0.4%Language:Shell 0.3%