Deploying to shinyapps.io

09/17/2015

Create a ShinyStan app unique to your model and host it online with RStudio’s ShinyApps service (shinyapps.io). Each app you deploy will have a unique url.

Note: R users who don’t use RStudio’s IDE can still deploy ShinyStan apps to shinyapps.io.

Step 1: ShinyApps account

Signup

To deploy your app to RStudio’s shinyapps.io you will need a ShinyApps account. If you don’t already have one you can sign up at https://www.shinyapps.io/.

The only limit to the number of different ShinyStan apps you can deploy is the limit set by RStudio for the type of ShinyApps account you sign up for.

Setup

When you finish signing up for your ShinyApps account there will be instructions for setting up your account on your local system using rsconnect::setAccountInfo() (this requires first installing the rsconnect package)

rsconnect::setAccountInfo(name, token, secret)

where name is your ShinyApps account name, and token and secret can be found from your ShinyApps account web page.

Step 2: Use deploy_shinystan to deploy your app to shinyapps.io

The deploy_shinystan function will deploy a ShinyStan app unique to your model to RStudio’s ShinyApps service.

For the example below assume that

To deploy the app use the command

deploy_shinystan(my_sso, appName = "MyModel", account = "username")

When to specify the account argument

If you have multiple ShinyApps accounts configured on your local system then the account argument is required. If you only have a single account then you can omit account

deploy_shinystan(my_sso, appName = "MyModel")

Graphical posterior predictive checks: the optional ppcheck_data and ppcheck_yrep arguments

If you have a vector of observations y that you want to use for ShinyStan’s graphical posterior predictive checks then you can also specify the optional ppcheck_data argument

deploy_shinystan(my_sso, appName = "MyModel", 
                 ppcheck_data = y)

If you’ve specified the ppcheck_data argument you can also use the ppcheck_yrep argument to tell ShinyStan the name of the parameter/quantity in your model containing the posterior predictive simulations/replications so that it is preselected as the parameter to use for doing the graphical posterior predictive checks. This is never required because you can also set this manually while using the app, but it is helpful if you want other people to view your model online because it avoids the need to communicate to them which parameter they need to select. If this parameter/quantity containing the posterior predictive replications is named yRep then you would use

deploy_shinystan(my_sso, appName = "MyModel", 
                 ppcheck_data = y, ppcheck_yrep = "yRep")

If the deployment process is successful the url for your app will be printed to the console and it should open in your web browser. You can also view your app by going to https://www.shinyapps.io and logging into your account.