Skip to content

SCAI-BIO/PDataViewer

PDataViewer

logo

tests version License DOI OpenSSF Best Practices fair-software.eu

PDataViewer is a web application that lets you explore the PD data landscape and identify cohort datasets that suit your research needs.

Introduction

Data collected in cohort studies lay the groundwork for a plethora of Parkinson’s disease (PD) research endeavors. PDataViewer lets you explore this PD data landscape and identify cohort datasets that suit your research needs. We accessed and curated major PD cohort datasets in a purely data-driven manner with the aim of:

  1. characterizing their underlying data
  2. assessing the quantity and availability of data
  3. evaluating the interoperability across these distinct cohort datasets.

Requirements

Installation

Clone the Repository

git clone https://github.com/SCAI-BIO/PDataViewer
cd PDataViewer

Install the Backend Requirements

cd backend
pip install -r requirements.txt

Install the Frontend Requirements

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install 20
npm install -g @angular/cli

Usage

Starting the Backend Locally

You can access the backend functionalities by accessing the provided REST API.

Run the Backend API on port 5000:

cd backend
uvicorn api.routes:app --reload --port 5000

Run the Backend via Docker

The API can also be run via docker.

You can either build the docker container locally or download the latest build from the PDataViewer GitHub package registry.

To build the Docker container locally:

docker build -t ghcr.io/scai-bio/pdataviewer/backend:latest .

To download the latest build:

docker pull ghcr.io/scai-bio/pdataviewer/backend:latest

After building or downloading, you will be able to start the container and access the PDataViewer API by default on localhost:8000:

docker run -p 8000:80 ghcr.io/pdataviewer/scai-bio/backend:latest

Starting the Frontend Locally

You can deploy a local version of the web application via Angular

You can access the web application on localhost:4200:

cd frontend
npm install
ng serve

Run the Frontend via Docker

You can deploy a local version of the web application via docker. You can either build the docker container locally or download the latest build from the PDataViewer GitHub package registry.

To build the Docker container locally:

docker build -t ghcr.io/scai-bio/pdataviewer/frontend:latest .

To download the latest build:

docker pull ghcr.io/scai-bio/pdataviewer/frontend:latest

After building or downloading, you will be able to start the container and access the PDataViewer web application by default on localhost:8080:

docker run -p 8080:80 ghcr.io/scai-bio/pdataviewer/frontend:latest

Run both the Frontend and Backend via Docker

You can deploy a local version of the API and the web application together.

  1. Ensure Docker Compose is Installed: Make sure you have Docker Compose installed on your machine. You can verify this by running:

    docker-compose --version
  2. Navigate to the Root (PDataViewer) Folder

  3. Build and Run the Containers:

    docker-compose -f ./docker-compose.local.yml up --build
  4. Verify that the Containers are Running:

    docker ps

This command lists all running containers. You should be able to see your containers with the name pdataviewer-frontend and pdataviewer-backend.

You can access the web application on localhost:3000 and the API on localhost:5000