27th October 2016 Wibo Pipping – The Hyve Glowing bear A modern user interface for tranSMART using the REST API
27th October 2016
Wibo Pipping – The Hyve
Glowing bearA modern user interface for tranSMART using the REST API
2
Agenda/Overview
● IMI Translocation
● Principles for the new UI
● Glowing bear
○ Design
○ Current status
○ Roadmap
● Questions
IMI TranslocationNew drugs 4 bad bugs
4
Translocation
● Part of the IMI antimicrobial resistance programme
● Integrate existing knowledge
○ Preclinical data
○ Clinical data
● Extend the REST API
5
Translocation - Role in project
6
Translocation - features
● Extended tranSMART REST API
● Improved R client
○ Reduced data download overhead
○ Extended constraints for data download
● Started work on new UI - Glowing bear
7
Translocation - New UI
● cBioPortal inspired
● Utilizes the REST API
● Well received
● Use cases provided by
● tranSMART community
PrinciplesCurrent UI and glowing bear
9
Current tranSMART UI● User experience:
○ Outdated look and feel
○ Steep learning curve
○ Feedback not always clear
10
Current tranSMART UI
● Technological debt:
○ Old fashioned server architecture
○ No separation of concerns
○ No test coverage
Cur
rent
cod
e qu
ality
→
Time to implement new feature →
11
Glowing bear - Goals
● Replace old UI for all common use cases
● Improve cohort selection to improve usability
● Improve user experience
● Leverage new functionality and improved REST API
build in 17.1 project
○ Longitudinal data
○ Modifier support
○ Cross study support
○ Data linking to third parties (i.e. Arvados)
12
Principles
● Responsive
○ Feedback to the user
● Informative
○ Insight into what data the user has
● Intuitive
○ Gradual learning curve
○ Low threshold to start
13
Responsive
● Feedback
○ Early
○ Correct location
○ Clear
14
Informative
● Insight in what the data has to offer
○ Ranges and distributions
○ Update figures when selecting data
● Maintain information flow through the system
15
Intuitive
● Flatten learning curve
● Lower threshold for new users
● Dynamic transition from simple to more complex use
cases
16
Glowing bear - design part 1
● Interactive dynamic web application
○ cBioPortal inspired
● Separation of concerns
○ Modular system
○ Separate back-end and front-end
TranSMART CoreDB + CoreAPI
REST API
Glowing bear
● Processing power● long running jobs● data storage
17
Glowing bear - design part 2
● Separation of concerns
○ Also in the front-end itself
● Plugin architecture
○ SmartR
○ Genome browser?
○ …. ?
● Why?
○ Simplify development and maintenance
Glowing bear
SmartR
Plugin X
18
Glowing bear - design part 3 ● Produced code has to have tests
○ Avoid regressions
○ Maintain quality of the product
● Current UI code base has a 0.00% test coverage
19
Recent additions
● Improved cohort selection
○ Supports up to 2 cohorts
○ Cohort grid
● Save and retrieve cohorts
● Plugin architecture
○ SmartR support
● Searching on study level
● metadata
Glowing bearIn development and Roadmap
21
Currently in development
● Data export
○ Adjusting REST API for support
● Longitudinal data
● Improved study selection
● File linking
● Cross study support
● Improve smartR workflow
● Extend searching concepts/metadata
● Frontpage - study changes statistics
● Advanced visualisations
● Notebook support
22
Planned roadmap - features
23
Planned roadmap
● Longitudinal data
○ Waiting for 17.1 Backend implementation
○ Support temporal relations in data queries
○ UI component in design phase
● Improve smartR workflow
24
Planned roadmap
● Improved study selection
○ Controlled vocabulary
○ Genes
● Frontpage - study changes statistics
○ Recently loaded studies
25
Planned roadmap
● File linking
○ Arvados
● Cross study support
● Extend searching concepts/metadata
○ Searching on concepts
● Advanced visualisations
○ Line graphs with data transformation
● Notebook support
○ Adding custom analysis
26
Want to contribute/test?
● Get in touch with us to become a tester/developer or
adopt a feature:
Questions