Skip to content

ICB-DCM/Shiny-Calorie

Repository files navigation

Shiny-Calorie: A context-aware application for indirect calorimetry data analysis and visualization using R

Shiny-Calorie is a Shiny/R web application for data and metadata integration, visualization and comprehensive statistical analysis of indirect calorimetry data sets. Shiny-Calorie ingests data sets originating from common metabolic phenotyping platforms, i.e. Sable, TSE Systems and COSMED. Metadata is provided through a standardized metadata sheet (Excel) and as a fallback through the metadata headers in raw data sets. For more details please refer to the documentation for users from the section below or the supplementary material of the Shiny-Calorie preprint (see references below).

Docker.io Docs Tests R License Code style


For users

Documentation

Documentation available through Github Pages: https://stephanmg.github.io/calorimetry

The app is available on the following web sites:

Please refer also to the supplementary material from Shiny-Calorie preprint [1].

Tutorial videos are available on YouTube: Tutorials.

Standalone Desktop apps

One can use the Electron wrapper of the app which uses docker inside the Electron app: https://github.com/stephanmg/shiny-electron-wrapper

Releases are uploaded to Sciebo automatically here: https://uni-bonn.sciebo.de/s/0qDhG2Bu1VNkRli/

There you can download the nightly builds for Windows, OSX or Linux. Builds are automatically generated and artifacts deployed trough the build Github workflow.

Metadata integration

One can use the Shiny/R metadata converter app: https://github.com/stephanmg/metadata-converter The metadata converter will generate a truncated metadata sheet compatible for reading into Shiny-Calorie.

Alternatively you can fill out the standardized metadata sheet [2] yourself in Excel or fall back to relying on the metadata header of raw data sets.

For developers

Option 1: DockerHub / Docker.io

  1. Pull Shiny-Calorie image from remote
docker pull stephanmg/Shiny-Calorie
  1. Start container
docker run --name Shiny-Calorie -it -p 1338:1338 stephanmg/Shiny-Calorie
  1. Open browser and navigate to: http://localhost:1338/

Note that you can also build your own container from the Dockerfile provided with either docker or podman.

Option 2: ShinyApps.io and on-premise Uni Bonn

The Shiny-Calorie application is also hosted on http://shinyapps.io/stephanmg/Shiny-Calorie and deployed to our local infrastructure on http://shinys.iaas.uni-bonn.de/Shiny-Calorie

Note that on the Uni Bonn infrastructure, a small Kubernetes cluster is used for efficient multi-user usage, upscaling and load balancing.

Option 3: Development installation

  1. Clone this repository
  2. Install dependencies with Rscript -e "library(renv); renv::restore()" from the current working directory
  3. Run Rscript startapp.R from base directory (inside this respository)
  4. Optionally if you wish to use load balancing, use the shell script start_app_instances.sh which will run (specified by the user) a variable number of app instances in parallel.

An example Nginx configuration for load balancing is provided in nginx_config.txt for administrators.

Note for developers: After building documentation a folder R will be created in the root directory. Manually delete this folder and do not add for tracking with Git, nor deploy, as this interferes with the Shiny app. We need to fake a proper R package structure in order to use the roxygenise functions, but do not need the structure after docs have been generated.

References

The Shiny-Calorie image was created with the assistance of the AI tool DALL-E 2.

About

Shiny-Calorie: A context-aware application for indirect calorimetry data analysis and visualization using R

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages