Bring your Shiny apps to the BioData Catalyst

The main goals of this guide are to:

  • provide a toolbox of prebuilt Shiny modules that third-party R Shiny developers can plug into their apps and connect with the Seven Bridges Platform
  • define the steps for third-party R Shiny developers or Velsera developers for creation and deployment of Shiny applications as on-demand web apps.

About on-demand web applications

On-demand web apps utilize our Data Studio infrastructure for hosting Shiny or any other web applications.

Hosting an R Shiny app as an on-demand application means making it available to run from the Public Web Apps gallery. When accessing the on-demand app from the gallery, a dedicated cloud instance will be allocated. The Docker image containing the application will be copied and run as a container. The entire process of fetching the instance and starting the app can take 2-3 minutes, like when starting a Data Studio analysis. Read more about our Data Studio feature.

One advantage of this approach is that our Seven Bridges File System (SBFS) is available allowing users to access their project files directly. This means that project files are mounted on the local file system and can be imported into your analysis without having to download them.

The mounted directory is called sbgenomics and contains these subdirectories:

  • Project-files
  • Output-files
  • Workspace

The /project-files subdirectory contains all your project files (the project from which you started the application). The users can only have “read” permissions on this directory.

However, the /output-files subdirectory aims to “save” the files you wish to write/export from your analysis/application into your project; therefore, you would have “write” permissions here. The files you store here will be exported to the project files once you stop your analysis/application.

The /workspace subdirectory can serve as a working directory where you can store temporary files produced during the web app execution, which you do not want to export. The content of this subdirectory will be saved and available the next time the app is initialized, but we strongly suggest not storing anything here.