- Notifications
You must be signed in to change notification settings - Fork2
Shiny app for interacting with the Fred Hutch instances of Cromwell. Contact Amy Paguirigan
License
getwilds/shiny-cromwell
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Shiny app for interacting with the Fred Hutch instances of Cromwell.
The app lives at a URL only accessible to Fred Hutch folks.
This app can also be run on your local machine for any reason, e.g., if you notice memory limitations in the deployed version or you want to run it at another institution.
You can run this Shiny app locally. First you'll need to install required packages:
(note: runmake pkg_deps_cmd
to update the below code block)
pak::pak(c("getwilds/proofr@v0.2","getwilds/rcromwell@v3.2.1","base64enc","cookies","DBI","dplyr","DT","ggplot2","glue","jsonlite","lubridate","magrittr","purrr","RColorBrewer","rlang","RSQLite","shiny","shinyBS","shinydashboard","shinydashboardPlus","shinyFeedback","shinyjs","shinyWidgets","tibble","uuid"))
And the above yourself in R.
Or you can runpkg_deps_install
which should find and install required packages all in one step.
After installing required packages run the app. There's a few different ways to do that:
- If you are familiar with using make commands, run
make run
- If you don't or can't use make, you can run it on the command line like
Rscript -e 'shiny::runApp("app", launch.browser = TRUE)'
- Inside of R you can run
shiny::runApp("app", launch.browser = TRUE)'
All of these should open the Shiny app in your default browser. If that does not happen get in touch!
The make commandmake run_docker
will attempt to run the app with Docker. You'll need Docker installed and running for this to work.
Note that CTRL+C doesn't work to kill the container after runningmake run_docker
. Yo have to use a separate terminal window or Docker Desktop to kill the container (basically the docker process doesn't receive the signal to kill its process).
Also note that docker commands can be specific to the host operating system, so if you run into errors you may need to modify the docker commands.
- Use print statements as needed ...
- Instead of just
make run
, one can run the app withSHINY_LOG=true make run
which activates the packageshinylogs
├── app│ ├── about.md│ ├── buttons.R│ ├── iputs_utils.R│ ├── modals.R│ ├── proof.R│ ├── server.R│ ├── sidebar.R│ ├── tab-servers.R│ ├── tab-submission.R│ ├── tab-tracking.R│ ├── tab-troubleshoot.R│ ├── tab-validate.R│ ├── tab-welcome.R│ ├── ui.R│ ├── ui_components.R│ ├── utils.R│ ├── validators.R│ └── www│ ├── favicon.ico│ ├── fred-hutch.svg│ └── js│ └── keyup.js
Notes about the structure:
- the main app files are at
app/server.R
andapp/ui.R
- files in
www/
are automatically sourced - code in other files in
app/
- e.g.,app/proof.R
- are only available if pulled in withsource()
We will continue to give the app more structure, possibly including Shiny modules and maybe as an R package.