transmart community meeting 5-7 nov 13 - session 3: modularization (plug‐ins, apis)

11
TranSMART API & Plugin Development: A Case Study TranSMART Community Meeting Chilly-Mazarin, France November 6, 2013

Upload: david-peyruc

Post on 19-Jan-2015

658 views

Category:

Health & Medicine


0 download

DESCRIPTION

tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs) Kees van Bochove, The Hyve

TRANSCRIPT

Page 1: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

TranSMART API & Plugin Development: A Case Study

TranSMART Community MeetingChilly-Mazarin, France

November 6, 2013

Page 2: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Requirements

• HTML5 Genome Browser (in-place in UI)• Drag-n-drop of High-Dimensional Data Nodes– Visualization of Genomic Variants– Visualization of Copy Number Variation Data

• Visualization of public data (gene annotations, SNP chip coverage, COSMIC annotations etc.)

• Switching between genome builds

Page 3: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Community Consultation• Ask transmart-discuss mailing list what people

are using / planning to use as genome browser• Ask the same on the LinkedIn group• Start a wiki topic on the tranSMART Foundation

wiki with an inventory of pro’s and con’s of the various genome browsers available

Page 4: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Solution

• Dalliance genome browser chosen as frontend• MyDAS was chosen as backend• Both implemented as plugins• Core API had to be extended with a few VCF-

specific methods

Page 5: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Kees van Bochove - The Hyve

Emerging tranSMART Architecture

Page 6: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Extend the core API

Page 7: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Write some tests

Page 8: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Create some implementing plugins

• https://github.com/thehyve/transmart-mydas• https://github.com/thehyve/dalliance-plugin

DB

MyDAS Backend Plugin Dalliance Frontend Plugin

TranSMART Core API

Page 9: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Add them to transmartApp

but don’t force it upon others

Page 10: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

Leverage other branches• Implementing VCF loading (and viewing) and

GWAS loading and viewing in tranSMART• VCF loader taken from GWAS Pfizer branch• Also, variant definitions (SNP loading) were

present in the J&J branch• It proved challenging to merge both

approaches, we but succeeded in the end• Generating more docs on the wiki!

Page 11: tranSMART Community Meeting 5-7 Nov 13 - Session 3: Modularization (Plug‐Ins, APIs)

2. Drag genomic node on genome browser

The end result