Page MenuHomePhabricator

embed web app in package
Closed, InvalidPublic

Description

a shiny app can also be allowed additionally to be run by the user locally if it is part of the package with something like following helper function

app <- function (display.mode = "normal") 
{
    shiny::runApp(system.file("appdir", package = "challengeR"), launch.browser = TRUE, 
        display.mode = display.mode)
}

where shiny app files server.R and ui.R are stored in /inst/appdir

so users would be able to install the package and then just run challengeR::app()

what do you think?

Event Timeline

It sounds nice, but I also think that we can run into cumbersome situations w.r.t. package management and version control with this approach: If the web app is located within the package, for each change to the package itself, it has to be investigated how the change affects the web app. The developer also has to adapt and test the web app then. This also means that for each package release, a corresponding web app has to be provided. In my opinion it makes more sense to focus either on the package or the web app during the development. Probably, we want to improve the web app that is based on a fixed package version x most frequently. This use case is then hampered by this approach as the package itself also evolves.

ok. just an idea, thought this might help issues with the server because people can run stuff by themselves and still seize the user interface.
can be closed or considered later

The idea of the web app is to lower the entry level for users that are not familiar with and/or don't want to install R (as this is already a hurdle for some of them).