MIRA - Enabling Access to MIAPPE compliant ISArchives through BrAPI
Use Case
Phenotyping datasets are often available as MIAPPE compliant ISA Tab in repositories. However, the programmatic use of those datasets is limited. To enable access to such data products, MIRA is transforming them and provides BrAPI endpoints accordingly. This allows developers to use the data products in their applications. In a demonstrator DivBrowse utilizes the BRIDGE core1000 dataset to color results of a dimensionality reduction of genotypic data by phenotypic observations results.
Installation
First, clone the repository to your local machine.
git clone https://github.com/IPK-BIT/mira.git
After that, several additional resources have to be provided, in order for MIRA to run.
MIAPPE ISArchive
MIRA uses MIAPPE compliant ISA Tab archives as primary input. Those MIAPPE ISArchives are made available by placing the data/
directory next to the docker-compose.yml
. A mapping of MIAPPE to ISA Tab and BrAPI is provided with this documentation. For the current version of MIRA, only ISArchives with one study and one assay are valid input.
Configuration File
A configuration file config.yml
is needed to configure server information and activate or deactivate modules not required. The configuration file needs also to be placed next to the docker-compose.yml
. An example configuration file is provided:
server:
name: 'MIRA Testserver'
description: 'Some description for your new MIRA server'
documentation: 'http://<your info>/docs'
requireAuthorization: false
contact:
organization:
name: 'Your Organization'
url: 'https://organization.org'
location: 'Country'
mail: 'mail@example.com'
module:
enableCore: true
enablePhenotyping: true
enableGenotyping: false
enableGermplasm: false
Running with HTTPS
For running with HTTPS, the certificate and private key need to be copied into the /app
directory.
For testing locally, it's possible to use mkcert to generate valid certificate and private key files.
Starting the MIRA Server
Use docker compose to install the application.
docker compose up
Usage
All available endpoints of a specific MIRA Server are automatically documented and made available through /docs
. The root path is also redirected to the documentation.
For a more detailed description of possible endpoints, use the official BrAPI specifications or the API documentation provided here.
Architecture
Figure 1: Architecture of MIRA
MIRA itself is a docker image, containing the implementation of a BrAPI server of endpoints mapping to the MIAPPE checklist and exposing /data
and config.yml
to mount the MIAPPE ISArchive as a dataset and the server configuration to.