R-shiny app for big data or local computer


If this query seems to you a piece of cake please I apologize as I am new to shiny. I have tried some video tutorials and instructions but could not get so much.

I have written a set of functions and want to shape those in shiny app. I am working in the discipline of Bio-Informatics that analyzes thousands of genomes at a time means the data could be hundreds of GBs. So I need to design an app that can run R-functions in the local computer with already installed Rstudio and the data/genomes. It will help the user to keep his data private and won't need to upload this big data to a server for analysis.

As a non-shiny app user, a web app means data needs to be uploaded to a server and your app should be published on a website.

The query is: I heard that shiny based app also supports a local version. It means if we run a shiny app from R-studio it can work just like .exe files/ GUI.
The second query is: Apart from R-studio, which software does a user need to install before running a shiny app for this GUI like work?


Think of shiny as a GUI interface to R output. It handles the presentation, not the processing. If the local host has the horsepower to handle big data in R, the processing in shiny should be within reach. One way to economize with non-dynamic data is to generate finished objects in static storage that can be loaded more quickly than calculated from scratch.

You don't necessarily need RStudio for this.
You need R, a web-browser to show the app and all the packages that are used for the app.
So in the end it's not really lightweight (in terms of memory), once I tried to remove all the packages (I thought) I never use from the R installation but failed soon.
For the packages I would supply a short R-script that can be run once to install all the required packages. In some instances this may need some manual adjustments if something doesn't work.
Then you can even create a shortcut for the end user:
"path to R\bin\R.exe -e "shiny::runApp('path to app', launch.browser = TRUE)"

for package management i would use renv package.