26
Nathan A Dunn 1 , Monica C. Munoz-Torres 1 , Colin Diesh 2 , Deepak Unni 2 , Eric Yao 3 , Ian Holmes 3 , Christine G. Elsik 2 and Suzanna Lewis 1 (1) Lawrence Berkeley National Laboratory, Berkeley, CA, (2) Division of Animal Sciences, University of Missouri, Columbia, MO, (3) Department of Bioengineering, Berkeley, CA Apollo: Improving Collaborative Genome Annotation https://github.org/GMOD/Apollo/ http://genomearchitect.org/

Apollo: Improving Collaborative Genome Curation

Embed Size (px)

Citation preview

Page 1: Apollo:  Improving Collaborative Genome Curation

NathanADunn1,MonicaC.Munoz-Torres1,ColinDiesh2,DeepakUnni2,EricYao3,IanHolmes3,

ChristineG.Elsik2andSuzannaLewis1

(1)LawrenceBerkeleyNationalLaboratory,Berkeley,CA,(2)DivisionofAnimalSciences,UniversityofMissouri,Columbia,MO,(3)DepartmentofBioengineering,Berkeley,CA

Apollo:ImprovingCollaborativeGenomeAnnotation

h t t p s : / /g i t h ub . o r g /GMOD/Apo l l o /

h t t p : / /genomea r c h i t e c t . o r g /

Page 2: Apollo:  Improving Collaborative Genome Curation

GenomeAnnotationStructuralAnnotation• exons,introns,UTRs• repeatregions• transpelements

• molecularevolution• sequenceconservation

FunctionalAnnotation• GeneOntology

• molecularfunction• biologicalprocess• cellularcomponent

• expression• metabolicpathways/functions• genefamilies

Page 3: Apollo:  Improving Collaborative Genome Curation

Experimental design, sampling

Comparative analyses

Consensus Gene Set

Manual Annotation

Automated Annotation

Sequencing Create Assembly

Synthesis & dissemination

ExampleGenomeAnalysisWorkflowManytools•Manypeople•Lotsofdata•ManyIterations

AnnotationFGENESH

Page 4: Apollo:  Improving Collaborative Genome Curation

AutomatedIdentificationofGenomicFeatures

Automated Annotation

GenerationofGeneModelsfindORFs,multipleroundsofgeneprediction,etc.AnnotationofGeneModelsDescribingfunction,expressionpatterns,metabolicnetworkmemberships

• Assemblyerrorscancausefragmentedannotations

• Limitedcoveragemakespreciseidentificationdifficult

Manual Annotation

Page 5: Apollo:  Improving Collaborative Genome Curation

Human Analysis

Automated Annotation

ManualAnnotationRefinesFeatures

Experimental Evidence

cDNAs,HMMdomainsearches,RNAseq,genesfromotherspecies.

• Additionaldata• Biologicalknowledge• Curatorexperience

Manual Annotation

Page 6: Apollo:  Improving Collaborative Genome Curation

AnnotatorsApollo

Google Web Toolkit (GWT) / Bootstrap

WhatisApollo?Annotators

ApolloGoogle Web Toolkit (GWT) / Bootstrap

Annotators

ApolloGoogle Web Toolkit (GWT) / Bootstrap

• Web-basedGenomeEditor• JBrowse• Real-timecollaborative• AutomaticSave

Photo Credits: i5K; Alex Wild at http://www.alexanderwild.com/: leaf cutter ant, ensign wasp; Leo Bukeboom: Nasonia vitripennis jewel wasp; Wikimedia Commons: Apis mellifera honey bee; Mike MacNeil USDA/ARS Fort Keogh LARRL: Bos taurus cow.

Page 7: Apollo:  Improving Collaborative Genome Curation

ApolloGenomeEditorNavigation

UserAnnotations

Evidence

Transcripts(GFF3,GBK)

BAMReads

Transcripts(GFF3,GBK)

BigWigXY

BigWigHeatMap

CreateAnnotationbyDragging/Right-click

CustomColorSchemes

ColorCDSFrame

Page 8: Apollo:  Improving Collaborative Genome Curation

HowtoEditData?SequenceAlterations

EditStructurebyDraggingorPopupMenu

History,Undo/Redo

EditFunctionalData

• PubMed/xdbref

• GeneOntology

• Metadata

• key/value

• status

• comments

Page 9: Apollo:  Improving Collaborative Genome Curation

NavigatewhileViewingGenome

• Allowsusersanalternatedimensionstonavigateandedit• Well-establishedparadigmfor“editing”inapplications

Resizable/Closeable ShareableLinks

Page 10: Apollo:  Improving Collaborative Genome Curation

SearchAnnotationsandDiscoverDetails

Search

Navigation

View/EditDetails

Page 11: Apollo:  Improving Collaborative Genome Curation

ExploreandExportSequences

Search

Navigation

Page 12: Apollo:  Improving Collaborative Genome Curation

AddandShareOrganisms

AddorganismsfromexistingJBrowsedirectory

Specify“Public”organismsthatdonotrequirealogin

Page 13: Apollo:  Improving Collaborative Genome Curation

ManageWhoSeesWhat

Add/SearchUsers

EditUserOrganismPermission

UserCan“Admin”anOrganism

Page 14: Apollo:  Improving Collaborative Genome Curation

WorkwithLotsofUsersandOrganisms

AddUsertoGroupswithPermissions

SetBulkUserPermissionsusingGroups

Page 15: Apollo:  Improving Collaborative Genome Curation

HowtogetApollointoyourWorkFlow?

Reports

DataInput

DataOutput

Analysis

Authentication

BLAT(built-in)

RemoteBLAST

ExampleWorkflow

Page 16: Apollo:  Improving Collaborative Genome Curation

ServerCriteria

ApolloServer

FileSystem

JBrowseDirectories

Security

• Quicksetupandeasytodeploy

• Plugins(websockets,security,etc.)• Scaleable• RapidApplicationDevelopment

• Integratedtesting• Bonus:Minimalchanges• Matureandwell-supported DataStore

• Thread-safetransactions

• Transparent/Queryable• Structured• SimpleSetup

RESTWebSocket

Considerations• Node.js• RubyonRails

• Grails• Struts,SpringMVC,etc.• Django,Php,etc.

JBrowse

Clients

Page 17: Apollo:  Improving Collaborative Genome Curation

GrailsServer

ApolloServer-Grails

JDBC

FileSystem

JBrowseDirectories

Security

• QuickSetup• Plugins• Scaleable(Spring/Hibernate/JVM)• RapidApplicationDevelopment• Integratedtesting• ExistingJBrowsetracks

DataStore• Thread-safetransactions• POJO(NoXML)• MultipleDBsupport• Structured

RESTWebSocket

JBrowse

Clients

Page 18: Apollo:  Improving Collaborative Genome Curation

• IntegratewithJBrowse• UsesexposedREST• Buildyourowninterface

• BuildComplexUI• Well-supported• IsJavaScriptatsomelevel

SidebarClientCriteria

OftheMillionAvailableOptions• Angular+Bootstrap• jQueryalltheway• GWT+Bootstrap• Dojo• OtherIdeas:React,Polymer,etc.

Annotators

ApolloGoogle Web Toolkit (GWT) / BootstrapJBrowse

DOJO / jQuery

ApolloJBrowse

RESTWebSocket

Page 19: Apollo:  Improving Collaborative Genome Curation

GWT• Java->JSOptimizedCross-Compiler• GoogleusesforComplexUI(Gmail,

Sheets,Adwords)• UsesexposedREST• Buildyourowninterface(morehere)• CanstilluseJS/HTMLwherever

GWTSidebarClient

JBrowseGenomicViewer• Websocketsimproved

reliability/performance

Annotators

ApolloGoogle Web Toolkit (GWT) / BootstrapJBrowse

DOJO / jQueryApolloJBrowse

RESTWebSocket

Page 20: Apollo:  Improving Collaborative Genome Curation

ScriptableWebServices• Examples:Groovy,Perl,shell• AutogeneratedAPI-docinApollo

curl -d "{ 'operation': 'get_features', ‘track':'Group1.10','username':'[email protected]','password':'demo'}" http://localhost:8080/apollo/AnnotationEditorService

Page 21: Apollo:  Improving Collaborative Genome Curation

ApolloServer-Grails

Security

JBrowseDirectories

Architecture

WebServicesClient

Perl,Shell,Groovy,PHP,etc.

Annotators

ApolloGoogle Web Toolkit (GWT) / BootstrapJBrowse

DOJO / jQuery

REST RESTWebSocket

JDBC

FileSystem

ApolloJBrowse

Page 22: Apollo:  Improving Collaborative Genome Curation

• apollo-config.groovy

• Webservices

• Grailsplugin

• JBrowseplugin

• Database

• Fork

• Ask

• Hackathon(Jan14,Scripps)

HowtomakechangesandconnecttoApollo

h t t p s : / /g i t h ub . o r g /GMOD/Apo l l o /

apo l l o@ l i s t s . l b l . g o v

Page 23: Apollo:  Improving Collaborative Genome Curation

ExampleIntegrations

GalaxyDocker

GFF3output,scriptsWebservices

VectorBase

iPlantCollaborative

Page 24: Apollo:  Improving Collaborative Genome Curation

ManualAnnotationwithApolloImprovesGeneModels

Improveannotations•Multipleevidencesources•Remotecollaborators•Workonmultipleorganisms•Publishimprovedgenesets

Enablecuratorstodotheirjob• Managemultipleorganisms• Manageusersandgroups• Integratecurationpipeline• ExtendApollotomeetneeds

Reports

ImportEvidence(JBrowse) Export

CuratedGenome

Analysis

Curate

Edit

GFF3

BAM

BigWig

Explore

Page 25: Apollo:  Improving Collaborative Genome Curation

Group20 Group31

FutureWork

Mavenize

WebApollo

DesktopApollo

DBbackend,Sidebar,Grails,Multi-organism,WS

1.0

2.0

Projection2.1

2.2 Variant/phenotypeannotation

2.3HumanData/Client-sideOptimization

Collapseintronsandspacebetweenfeatures

Bringscaffoldstogether

Viewandlinkgenesacrossscaffolds

Page 26: Apollo:  Improving Collaborative Genome Curation

• BerkeleyBioinformaticsOpen-sourceProjects(BBOP),BerkeleyLab:ApolloandGeneOntologyteams.SuzannaE.Lewis(PI).

• §ChristineG.Elsik(PI).UniversityofMissouri.

• *IanHolmes(PI).UniversityofCaliforniaBerkeley.

• StephenFicklin,GenSAS,WashingtonStateUniversity

• ApolloissupportedbyNIHgrants5R01GM080203fromNIGMS,and5R01HG004483fromNHGRI.AlsosupportedbytheDirector,OfficeofScience,OfficeofBasicEnergySciences,oftheU.S.DepartmentofEnergyunderContractNo.DE-AC02-05CH11231

• AlexWildathttp://www.alexanderwild.com/:leafcutterant,ensignwasp;LeoBukeboom:Nasoniavitripennisjewelwasp;WikimediaCommons:Apismelliferahoneybee;MikeMacNeilUSDA/ARS

• ThankstoyouandtheApollo/GMODCommunities

Apollo

MonicaMunoz-Torres

NathanDunn

ColinDiesh§

DeepakUnni§

JBrowse

EricYao

*GeneOntology

ChrisMungall

SethCarbon

HeikoDietze

BBOP

Apollo:http://GenomeArchitect.org

https://github.org/GMOD/Apollo/

Questions?

NALatUSDA

ChristopherChilders

MonicaPoelchau

Mei-JuChen

Yu-Yu“Fish”Lin

GaryMoore

United States Department of AgricultureNational Institute of Food and Agriculture