R Shiny App for using openVA
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.



Analyze Verbal Autopsy (VA) data with the InSilicoVA & InterVA algorithms using shiny-openVA.R, which builds a web app with the R package Shiny. The app can process VA data from the 2016 WHO VA instrument (versions 1.4.1 and 1.5.1). Data from an Open Data Kit (ODK) Briefcase export are also accepted formats for the app.


The dependencies for the OpenVA_RShiny app include Java, and R, as well as several R packages.

To run the OpenVA_RShiny app: (1) download the files shiny-openVA.R; (2) install Java Development Kit; (3) install R; and (4) start R and install the necessary packages with the following command:

install.packages(c("openVA", "shinyjs", "CrossVA"), dependencies = TRUE)


  • The app depends on CrossVA version 0.9.3 as well as version 1.2.5 of the R package InSilicoVA package. To update a previously installed versions of these packages, run the following command at the R prompt (which may ask you to select a CRAN mirror and to confirm the update of each package for which you have administrative privileges):

    ## update all packages and have R ask about updates for each package:
    ## update all packages without confirmation
    ## update.packages(ask = FALSE)


After installing the dependencies, open the file shiny-openVA.R in R, select all of the code and execute it. This repo has two example ODK Briefcase exported data sets (odkBriefcaseExport.csv) and (who151_odk_export.csv), which can be used by the Shiny app. When running InterVA5 or InSilico2016, users can specify the version of the 2016 WHO VA Questionnaire used to collected the data. The file (odkBriefcaseExport.csv) is an example of version 1.4.1 of the 2016 WHO VA Questionnaire, while the file (who151_odk_export.csv) is an example of version 1.5.1. The shiny app will appear in your default web browser. See the vignette for more details. Note: The vignette needs to be updated, and may not reflect the current state of the shiny app.


InSilicoVA depends on the R package rJava. It is common to run into problems with loading rJava (and thus InSilicoVA).

  • For linux and Macs, it may help to open a terminal run the command R CMD javareconf, and then try loading InSilicoVA.

  • For Macs R.app will look for jdk-9. If you are using a different version of Java (e.g., jdk-8 or jdk10) then you need to tell R.app where to look for your Java installation. In the terminal, run the following command with your computer-specific paths

    install_name_tool -change \
    /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/lib/server/libjvm.dylib \
    /Library/Java/JavaVirtualMachines/jdk-10.0.2.jdk/Contents/Home/lib/server/libjvm.dylib \ 

    you will probably need to modify the third line above to reference the path to jdk-10 (or jdk-8) on your machine. See this discussion for more details.

  • For Macs, you may want to try using RStudio instead of R.app, since RStudio does a better job finding the appropriate version of Java.

  • On Windows, you may have luck with the following commands at the R prompt:

    options(java.home = "C:\\Path\\to\\Java\\jdk")
    ## Option 2:
    ## Sys.setenv("JAVA_HOME" = "C:\\Path\\to\\Java\\jdk")

    Another alternative is to create a new Environment Variable with variable name "JAVA_HOME" and variable value "C:\Program Files\Java\jdk-8u181\jre" (or wherever Java JDK is installed on your computer), and then restart your computer. For more information on setting Environment Variables in windows see: https://www.java.com/en/download/help/path.xml.

To Do

  • update vignette
  • add support for Tariff and WHO VA instrument


GNU General Public License v3.0