Skip to content

Application to securely upload data to and download data from St. Jude Cloud Platform.

License

Notifications You must be signed in to change notification settings

NGeneBio-Genomics-Platform/sjcloud-data-transfer-app

 
 

Repository files navigation

St. Jude Cloud Data Transfer Application

⚠️ NOTICE: This repository has been deprecated.

FOSSA Status

Branch Version CI Coverage
Master v1.6.0 Node.js CI Coverage Status
Development v1.6.0 Node.js CI Coverage Status

A desktop application written on top of the Electron Framework facilitating easy uploading and downloading of genomic data to the St. Jude Cloud. Functionality includes:

  • Logging in using OAuth for both internal and external St. Jude users.
  • Reliably uploading and downloading genomic data files to/from the platform.

You can find the latest built version of the tools on the releases page.

Building

Prerequisites

If you'd like to build yourself, you'll also need the following prerequisites installed:

Name Install Link
NodeJS Using NVM or Official Site

You must use version 12 of NodeJS and version 6 of NPM. We recommend installing NVM, then running nvm install 12. This will handle installing both the correct Node version and the correct NPM version.

Process

The process for installing the software in production mode:

# download repository
git clone git@github.com:stjude/sjcloud-data-transfer-app.git
cd sjcloud-data-transfer-app

npm i                           # install dependencies
export NODE_ENV=production      # set the Node environment. Can be 'production' or 'development'.
# set NODE_ENV=production       # if you're on Windows cmd.exe.
# $Env:NODE_ENV = "production"  # if you're on Windows powershell.
npx gulp compile                # compile the frontend/backend code.
npm start                       # start the application.

Development

Running the tool in development mode requires a few changes to the config:

# download repository
git clone -b development git@github.com:stjude/sjcloud-data-transfer-app.git
cd sjcloud-data-transfer-app

npm i                              # install dependencies
export NODE_ENV=development        # set the Node environment. Can be 'production' or 'development'.
# set NODE_ENV=development         # if you're on Windows cmd.exe.
# $Env:NODE_ENV="development"      # if you're on Windows powershell.
npx gulp compile                   # compile the frontend/backend code.
npm run start:dev                  # start the application.

Note that we recommend that you use the following environment variables when developing:

export AUTOUPDATE_ENABLED="false"
export CHROMIUM_MENU="true"
# set AUTOUPDATE_ENABLED="false"   # cmd.exe
# set CHROMIUM_MENU="true"         # cmd.exe
# $Env:AUTOUPDATE_ENABLED="false"  # PowerShell
# $Env:CHROMIOM_MENU="true"        # PowerShell

We recommend that in practice, you use the following command in a separate tab to recompile the code as you make changes:

# continuously recompile frontend/backend code
npx gulp develop

If you are only working with the front-end code, you can develop in the web browser, which should automatically open up BrowserSync.

Testing

End-to-end testing is as simple as running the following command.

npx gulp test

Issues

If you have any issues, please file a bug report at the issues page.

About

Application to securely upload data to and download data from St. Jude Cloud Platform.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 34.8%
  • TypeScript 31.5%
  • Vue 31.4%
  • Less 1.4%
  • Other 0.9%