Literature DB >> 35179566

Integrated Genome Browser App Store.

Sameer Shanbhag1, Riddhi Patil1, Noor Zahara1, Chirag Shetty1, Rachel Weidenhammer1, Sneha Watharkar1, Pranav Tambvekar1, Philip P Badzuh1, Chester Dias1, Narendra Vankayala1, Prutha Kulkarni1, Charan Vallapureddy1, Shamika Kulkarni1, Pooja Nikhare1, Nowlan H Freese1, Ann E Loraine1.   

Abstract

Rapid progress in genome science requires equally rapid visualization software development so that researchers can better explore and understand novel datasets. To make developing new visualizations faster and easier, we previously re-factored the Integrated Genome Browser, a desktop Java application with dozens of features, into a pluggable application framework that can accept new functionality as plug-ins, called IGB Apps. However, developers lacked a centralized location for sharing Apps, making it hard to connect with potential users. To fill this gap, we created an App Store for IGB, a user-friendly Web site for developers to release and document Apps, and for users to find them. AVAILABILITY: The IGB App Store is available from https://bioviz.org.
© The Author(s) 2022. Published by Oxford University Press. All rights reserved. For permissions, please e-mail: journals.permissions@oup.com.

Entities:  

Year:  2022        PMID: 35179566      PMCID: PMC9004644          DOI: 10.1093/bioinformatics/btac109

Source DB:  PubMed          Journal:  Bioinformatics        ISSN: 1367-4803            Impact factor:   6.937


1 Introduction

Integrated Genome Browser (IGB) is a fast, flexible, free and open-source genome browser implemented in Java that runs natively on users’ personal computers (Nicol ). IGB is best known for its responsiveness and fast animated zooming, which evoke the feeling of effortless flight through a genomic data scene. IGB is also highly interactive, offering many ways to manipulate and transform data, from selecting and inspecting individual data items to performing multi-step visual analytics operations on entire datasets, separated into tracks. Since its first release in the early 2000s, a small community of developers and users has continuously maintained and improved IGB, transforming it into an extensible, pluggable framework based on OSGi (Freese ), an open standard for building modular programs in Java. Using this new framework, we and others have developed plug-ins, called ‘IGB Apps’, that add new visual analytics operations, new menu items or entirely new windows to IGB (Céol , 2020; Céol and Müller, 2015; Mall ). However, until now, developers had to deploy and distribute their Apps themselves. They needed to set up a Web site to host their App and then advertise the URL to potential users, who had to enter the URL manually into IGB. This was inconvenient, reducing enthusiasm for the IGB platform among developers and users alike. To make developing and releasing IGB Apps easier, we created and deployed an App Store for IGB, a Web site where developers can upload and publicize their Apps and users can find them. In this article, we summarize key features of the App Store, including how the App Store, a Web application, communicates with IGB, a native software that runs outside a Web browser.

2 Results

2.1 Submitting an App

To submit a new App or release a new version of an existing App, a developer first logs in to the App Store via social sign-in (currently, only social sign-in with Google is supported). Next, the developer uploads their App file, implemented as a java archive (jar) file, called a ‘bundle’ in OSGi parlance. The site unpacks the file and checks for compatibility with IGB, displaying a summary report that invites the developer to either submit the App file as-is or replace it with a new version. If the compatibility check passes, the developer can click a button to submit the App, which deploys the jar file to a private testing site which site managers use to install the App into IGB and try it out, manually checking App code and behavior for bugs or security-related red flags, such as sending data to external sites without a user’s knowledge. Managers then either release the App as-is or contact the developer with feedback if changes are needed. Developers and site managers receive email notifications when Apps are submitted or released for public use. Once an App is released, it receives a dedicated home page, which the developer can edit and customize, adding other users as editors. They can also release new versions without further manual review by site maintainers.

2.2 Installing an App

Finding and installing Apps into IGB is similarly straightforward. The App Store home page shows a grid of App tiles, sorted alphabetically by App name (Fig. 1A), which users can search using a free text query form or a faceted search interface, which filters Apps by categories created and curated by site maintainers. Future App Store releases will likely incorporate categories from systems, such as the EDAM ontology of bioscientific data analysis and data management (Ison ), further improving App dissemination and impact.
Fig. 1.

IGB App Store interface. (A) App Store home page. (B) Home page for ProtAnnot, an IGB App

IGB App Store interface. (A) App Store home page. (B) Home page for ProtAnnot, an IGB App Clicking an App tile opens the App’s home page, which describes App functionality and allows users to install an App into IGB. If IGB is running, and if the App has not yet been installed, the page displays a button labeled with ‘Install the App’. If the App is already installed, the button displays the text ‘Installed’, and if it is installed but a newer version is available, the button displays the text ‘Update the App’. Once an App is installed or updated, the button label changes to ‘Installed’. If IGB is not running, the button displays a message advising the user to start the IGB program and links to a page where the user can download and install IGB. Users can also install or update Apps within the IGB interface, using the IGB App Manager window, which resembles the App Store interface, making both easier to learn and remember between sessions.

3 Materials and methods

We implemented IGB App Store using the Django Web application framework and starting with a fork of the open-source Cytoscape App Store code base (Lotia ). We customized and updated the code base extensively, describing two major changes here. First, we re-designed the home page, blending and improving on user interface conventions found across many app store-like applications. For example, we improved on the Grafana Plug-ins Web site faceted search interface by adding tooltips defining the curated categories used. Second, we re-factored the App Store to function as an OSGi Bundle Repository (OBR), conforming to the Apache Felix project OBR specification (Apache Foundation, 2021). On startup, or when a user adds a new App Store, IGB retrieves an OBR-compliant XML document listing the App Store’s available Apps, their versions and their IGB platform requirements, ensuring that IGB installs compatible Apps only. When users visit an App home page, Javascript running in the Web page contacts a localhost REST endpoint within IGB to determine App status, modifying the Web page’s ‘Install this App’ button accordingly (Fig. 1B). The App Store is open source, and the full commit history of the project is available from https://bitbucket.org/lorainelab/appstore. Ansible playbooks used to deploy and update App Store on Amazon Web Service infrastructure are available from https://bitbucket.org/lorainelab/appstore-playbooks. Other groups are welcome to deploy their own App Stores, or re-use the code to launch their own projects, with the caveat that supporting an application other than IGB would require modifying the user interface, along with the JavaScript code controlling the App page ‘Install the App’ button, code that depends on interacting with IGB itself via its localhost endpoint.
  8 in total

1.  The Integrated Genome Browser: free software for distribution and exploration of genome-scale datasets.

Authors:  John W Nicol; Gregg A Helt; Steven G Blanchard; Archana Raja; Ann E Loraine
Journal:  Bioinformatics       Date:  2009-08-04       Impact factor: 6.937

2.  Integrated genome browser: visual analytics platform for genomics.

Authors:  Nowlan H Freese; David C Norris; Ann E Loraine
Journal:  Bioinformatics       Date:  2016-03-16       Impact factor: 6.937

3.  Genome and network visualization facilitates the analyses of the effects of drugs and mutations on protein-protein and drug-protein networks.

Authors:  Arnaud Céol; Lisette G G C Verhoef; Mark Wade; Heiko Muller
Journal:  BMC Bioinformatics       Date:  2016-03-02       Impact factor: 3.169

4.  The MI bundle: enabling network and structural biology in genome visualization tools.

Authors:  Arnaud Céol; Heiko Müller
Journal:  Bioinformatics       Date:  2015-07-25       Impact factor: 6.937

5.  ProtAnnot: an App for Integrated Genome Browser to display how alternative splicing and transcription affect proteins.

Authors:  Tarun Mall; John Eckstein; David Norris; Hiral Vora; Nowlan H Freese; Ann E Loraine
Journal:  Bioinformatics       Date:  2016-04-07       Impact factor: 6.937

6.  Cytoscape app store.

Authors:  Samad Lotia; Jason Montojo; Yue Dong; Gary D Bader; Alexander R Pico
Journal:  Bioinformatics       Date:  2013-04-16       Impact factor: 6.937

7.  EDAM: an ontology of bioinformatics operations, types of data and identifiers, topics and formats.

Authors:  Jon Ison; Matús Kalas; Inge Jonassen; Dan Bolser; Mahmut Uludag; Hamish McWilliam; James Malone; Rodrigo Lopez; Steve Pettifer; Peter Rice
Journal:  Bioinformatics       Date:  2013-03-11       Impact factor: 6.937

  8 in total

北京卡尤迪生物科技股份有限公司 © 2022-2023.