Background
==========

There are hundreds of public databases for systems biology data, and an equal number of applications for working with that data. However, it is often difficult to work with data of interest in the desired applications. Databases may not offer programmatic access, or require special scripting. Software tools may imprison the data in such a way that it can only be analyzed by a particular application. Data available for one organism may not be available for another. Individuals may have to download their own copies of databases in order to work with them in nonstandard ways, forcing them into the role of curator. Software tools may not allow users to work with their own data. Applications may only accept data in arcane formats, requiring special conversion.

Here we describe Gaggle Tool Creator (GTC), a web application which addresses these problems by providing public data for hundreds of organisms, and making it instantly accessible to many popular, unrelated web resources and desktop applications. This in turn allows sophisticated analyses and novel discoveries to be achieved with just a few mouse clicks (Figure [1](#F1){ref-type="fig"}).

![**Exploring the arginine fermentation pathway in *Haloarcula marismortui*and *Halobacterium sp. NRC-1***. Start by opening GTC (A) and selecting these two organisms, which provides the link to launch all the other tools in this figure. A list of genes from *H. marismortui*involved in the arginine fermentation pathway \[[@B10]\] is broadcast to several tools (C, D, E) with one click, including an orthology translator (B), allowing comparable regions in the two organisms to be visualized side by side.](1751-0473-5-7-1){#F1}

Implementation
==============

GTC is composed of a number of MySQL databases, regularly updated by scheduled scripts which download systems biology data from public sources. These sources, and the method used to download data from each, are as follows: NCBI (web services), STRING\[[@B1]\] (flat file download), BioNetBuilder\[[@B2]\] (flat file download), KEGG\[[@B3]\] (web services), and the UCSC genome browser\[[@B4]\] (flat file download). We currently have data for 500 organisms, with the eventual goal of having data for all sequenced organisms. The core of GTC is a Java web application which makes available links to several applications suited to the analysis of particular types of data. These applications are launched using Java Web Start, a technology which seamlessly pushes software updates to the user\'s computer. All of these applications implement the Gaggle framework \[[@B5]\] for sharing data between applications and web sites (Figure [2](#F2){ref-type="fig"}).

![**Flow of GTC**. Periodically run scripts download data from public sources and update local databases. GTC web app enables launching of desktop analysis applications (using Java Web Start) which are loaded with organism-specific data.](1751-0473-5-7-2){#F2}

Results and Discussion
======================

GTC\'s user interface allows the user to choose up to ten organisms to work with.

GTC displays several links for each organism, and the following list describes in greater detail what happens when the user clicks these links.

Annotation
----------

A desktop application displaying annotation data from NCBI.

Synonyms
--------

An application that can translate between various naming schemes for genes (Locus Tag, Gene Name, Product Name). Data come from either NCBI or BioNetBuilder.

Network
-------

The Cytoscape network viewer \[[@B6]\], with data from either STRING or BioNetBuilder.

GenomeMap
---------

A genome browser, preloaded with genomic data from the UCSC genome web service.

Orthology Translator
--------------------

Finds orthologs between any two organisms (invoked when the user chooses exactly two organisms to work with).

Each of these links is paired with another called \"Load Your Own\" which allows the user to provide their own data. Because Gaggle is a message-passing framework, the user is not limited to the applications listed above and in fact can use any Gaggle-enabled tool; and, using Gaggle\'s Firegoose extension \[[@B7]\] for the Firefox browser, web sites such as KEGG, STRING, EntrezGene, EntrezProtein, and DAVID \[[@B8]\]\[[@B9]\]. (GTC will work with any modern web browser but Firegoose enables two-way communication with Gaggle-enabled web sites.)

Availability and Requirements
=============================

**Project name:**GTC (Gaggle Tool Creator)

**Project home page:**<http://gaggle.systemsbiology.net/gtc>

**Operating system:**Platform independent web site

**Programming languages:**Java, Javascript

**Other requirements:**Java 1.5 or higher and a web browser. While GTC can be viewed with any modern web browser, Firefox and the Firegoose extension are required for full interoperability with Gaggle-enabled applications and websites.

<http://getfirefox.com>

<http://gaggle.systemsbiology.net/docs/geese/firegoose/>

**License:**GNU LGPL

**Any restrictions to use by non-academics:**None

Competing interests
===================

The authors declare that they have no competing interests.

Authors\' contributions
=======================

DT developed the specification and design of the software and drafted the manuscript. JCB contributed to the design of the software. NSB conceived of the project, participated in its design and coordination and helped to draft the manuscript. All authors read and approved the final manuscript.

Acknowledgements
================

We thank Optra Systems for engineering assistance, and Sarah Killcoyne for modifications to the Gaggle plugin for Cytoscape.

*Funding:*This work was supported by grants from NSF (DBI-0640950), DOE (DE-FG02-07ER64327), NIH (P50GM076547) and Battelle (PNNL subcontract 39527 to NSB).
