Home

Introduction

Xposome is a shiny application that aims to build a repository of gene expression datasets that profile the transcriptomic responses to exposure of known toxins.

There are two types of the Xposome applications that you can install on your local machine:

  • Xposome with GeneHive database incorporated
  • Xposome without GeneHive database

In this post, I will go over instructions on how to install the Xposome application without relying on GeneHive database on your local machine. If you are interested in incorporating GeneHive as a database, please contact us at montilab@bu.edu for further implementation.

Local Installation

Must have R and Rstudio installed before proceeding:

To run the Xposome application:

  • Download the zipped codebase from our GitHub repo
  • Unzip the file and navigate to the shinyApps folder
  • Within the shinyApps folder, open the app.R file with Rstudio
  • After the file is opened in Rstudio, click on the “Run App” button located on the top right corner of the program to launch the application

Folder Structure

Xposome-local

  • shinyApps
    • data
    • User_Login_List.csv
      Project_List.csv
    • www
      • CSS
      • style.css
        main_style.css
        LoginStyle.css
        ModeratorStyle.css
      • JS
      • Javascript.js
      • IMAGES
      • github_logo.png
      • HTML
      • publications.html
      app.R
      home.R
      overview.R
      portal.R
      sign_in.R
      other *.R files
  • shinyApps-log
  • dockerfile
  • shiny-server.sh

Dockerize The Xposome Application

Not familiar with Docker? You can download it here and then check out the R Docker tutorials.

To check if docker is installed.

docker –version


To dockerize the Xposome application with GitHub:

  1. Download the zipped codebase from our GitHub repo
  2. Unzip the file and open the terminal
  3. cd to where the dockerfile is stored. Note: the dockerfile is a text file that contains all of the dependencies and instructions on how to run the Xposome application.
  4. To build a docker image for the Xposome application, run the following command
    docker build -t xposome:latest .
    -t is used to add a tag to an image such as the version of the app, i.e. xposome:2.0.1 or xposome:latest
    Note: the build will take some time as it depends on a number of system dependencies and R packages

    After the build is completed, you can check if the image is built successfully.
    docker images


  5. Next, create a docker container that utilizes the Xposome image and publishes the application on the host machine.
    docker run -d -p 3838:3838 \
      -v shinyApps/:/srv/shiny-server/ \
      -v shinyApps-log/:/var/log/shiny-server/ \
      xposome:latest
    -d is used to run the container in detached mode
    -v is used to mount the code base or data files from the host directory to the container directory <host_dir>:<container_dir>
    -p is used to link the container port to the host port and publish the application thru the host port <host_port>:<container_port>

    For more information about the syntax usage, see docker documentation

    To check if the container is built and running sucessfully,
    docker container ps

  6. Lastly, you can visit the local host on your machine, i.e. http://localhost:3838, to check if the application is indeed hosted there.


To dockerize the Xposome application with Docker Hub:

  1. The docker image for the Xposome application is available on Docker Hub. To pull the image, just type the following command in the terminal:
    docker pull montilab/xposome
    To check if the image is built successfully.
    docker images
  2. Follow the step 4 and 5 of “Dockerize the Xposome application with GitHub” to build the docker container for the Xposome applicaton


Additionally, check out our documentation on how to create an encrypt HTTPS traffic to the Xposome application with NGINX and Docker-Compose

Data Access

The Xposome application requires several structural datasets in order for it to run smoothly. We do provide API access to our data, see our API Explorer.

Application Usage

The Xposome shiny application contains four pages:


The Home Page

Gives a general description about the Xposome Portal and its usage

1 / 4

The Overview Page

Provides information about the datasets that are currently available on the Xposome Portal

2 / 4

The Portal Page

Enables interactive exploration of expression profiles of a list of projects currently existed on the Xposome Portal that were exposed to a panel of known carcinogens. Below is the portal page of the Adipogenicity Project which associated with 3T3-L1 cell line.