AmiGO 2: Difference between revisions

From GO Wiki
Jump to navigation Jump to search
(Created page with "= Introduction = AmiGO 2 is currently a development project to create the next generation of AmiGO--the current official web-based set of tools for searching and browsing th...")
 
 
(96 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= Introduction =
[[Category:AmiGO]]
[[Category:Software]]
= Status =


AmiGO 2 is currently a development project to create the next generation of [[AmiGO]]--the current official web-based set of tools for searching and browsing the Gene Ontology database. It is still under active development, with a demonstrations site available at [http://amigo2.berkeleybop.org]. Please be aware that this site changes frequently and may still have downtimes (see the [[AmiGO_Labs]] page for the usual caveats).
Currently in [http://amigo.geneontology.org production].


= The Backend =
= Introduction =


= The Frontend =
AmiGO 2 is a project to create the next generation of [[AmiGO]]--the current official web-based set of tools for searching and browsing the Gene Ontology database.


= Availability =
For an overview of features, please see the [[AmiGO_2_Manual:_Overview | overview documentation]].


While AmiGO 2 is an open source software project, it is currently
For installation information, please see the [[AmiGO_2_Manual:_Installation | installation documentation]].
as part of the [http://geneontology.cvs.sourceforge.net/geneontology/ go-dev] CVS repository from the Gene Ontology
[https://sourceforge.net/projects/geneontology SourceForge.net page].


For full installation instructions, please see the [[AmiGO_Manual:_Installation | installation]] wiki pages.
= AmiGO 2 =


For information on maintenance and upkeep, please see the [[AmiGO_Manual:_Maintenance | maintenance]] wiki pages.
While we sometimes talk about AmiGO 2 as a unified project, its component parts are currently broken into three groups in two different repositories: GOlr (backend and loading) and the perl and JavaScript portions of the frontend.


== What can I do using AmiGO? ==
== GOlr: The Backend ==


The most fundamental change from the old AmiGO is the backend containing the Gene Ontology data--the MySQL relational database, has been replaced and is now loaded directly into a Solr document store, dubbed [[GOlr]].


This new backend not only provides the engine for running AmiGO, but can be used by anybody as a web service by itself. More information is available on the [[GOlr]] page.


== What data does AmiGO use? ==
== The Perl and JavaScript Frontend ==


The AmiGO 2 frontend is the user layer over the GOlr backend. Some components of AmiGO 2 use perl libraries to communicate with the GOlr backend (and other remote sources), process the results, and display them to the user. Other components (JavaScript APIs) communicate directly with the GOlr backend.


== JavaScript API ==


= Availability =
The beta public JavaScript APIs will eventually be available at http://api.berkeleybop.org.
While a permanent home for the JSAPI is being considered as we move into beta, preview documentation is available at http://api.berkeleybop.org/amigo2/docs/ .


AmiGO is an open source software project and can be downloaded and installed as part of the [http://geneontology.cvs.sourceforge.net/geneontology/ go-dev] CVS repository from the Gene Ontology
= Development =
[https://sourceforge.net/projects/geneontology SourceForge.net page].


For full installation instructions, please see the [[AmiGO_Manual:_Installation | installation]] wiki pages.
The current version is 'trunk'. It is in active development.


For information on maintenance and upkeep, please see the [[AmiGO_Manual:_Maintenance | maintenance]] wiki pages.
The backend GOlr loading code is available on Google Code, please see the [[GOlr]] page for more details.


= Browser Compatibility =
The frontend code is broken between AmiGO 2-specific code repo and a more generic JavaScript/JavaScript API code repo, both are hosted on GitHub. The former can be found [https://github.com/kltm/amigo here] and the latter [https://github.com/kltm/bbop-js here].


AmiGO is compatible with most modern operating system/browser combinations with good CSS support, including:
More detailed instructions on installation are pending, but the front page both both repositories are a great place to start.


* Firefox on Linux, Windows, and Mac OS X.
== List ==
* Mozilla/Netscape 6 on Linux, Windows, and Mac OS X.
* IE on Windows, but NOT on Mac OS X. IE on Mac OS X does support CSS standards.
* Safari on Mac OS X.
* Konqueror on Linux.
* Opera on Linux, Windows, and Mac OS X.


In order to use all of the functionality available in this version of AmiGO, we recommend that cookies are allowed and JavaScript is turned on.
There is mailing list for AmiGO 2 development [https://lists.lbl.gov/sympa/info/amigo2-dev here].
The Main Window


The HTML page you view may vary slightly in details.
== Compatibility ==


= Components =
=== Backend ===


AmiGO is made up of several interacting programs that work together to create a coherent whole.
The backend is developed in Ubuntu 12.04 and 12.10. It has also been run successfully on Mac OSX 10.7. Given these two, it is expected to run on any fairly well-behaved modern *nix platform.


== Main components ==
=== Frontend ===


The most used components
AmiGO 2 should be compatible with most modern operating system/browser combinations with good JavaScript and CSS support. However, at this time, extensive testing has not been done. AmiGO 2 is mostly developed with Firefox, Chrome, and Opera on several versions of GNU/Linux.


AmiGO's major components are the ones that are listed at the top of every page; these are the ones where your work will usually begin.
== Repositories and Trackers ==


*[[AmiGO_Manual:_Main_Page | Main Page]]
The repositories and trackers for the elements that compose AmiGO 2 are:
*[[AmiGO_Manual:_Browse | Browse]]
*[[AmiGO_Manual:_Search | Search]]


=== Pages from the main components ===
* Backend
** GOlr - Solr schema and definitions for GO (in the AmiGO 2 [https://github.com/kltm/amigo repository])
** [https://code.google.com/p/owltools/ OWLTools] - preferred loader
* Frontend
** [https://github.com/kltm/bbop-js BBOP JS] - general JS code
** [https://github.com/kltm/amigo AmiGO 2] - JavaScript/Perl code and web server deployment; GO specific BBOP JS code


*[[AmiGO_Manual:_Term_Details | Term Details]]
== Timeline ==
*[[AmiGO_Manual:_Gene_Product_Details | Gene Product Details]]
*[[AmiGO_Manual:_Bar_Chart | Bar Chart]]
*[[AmiGO_Manual:_GraphViz | GraphViz]]
*[[AmiGO_Manual:_RG_Graphical_View | Reference Genome Graphical View]]


== Other Components ==
{| class="wikitable"
|-
! tag
! release
! highlight features
! feature notes
! comments
|-
| beta0
| 2013-04-12
|
* Initial possible feature set
|
|
* First external-usable A2 release
|-
| beta1
| 2013-07-15
|
* Search
* Grebe
* Details pages
* GOOSE
* Axis/matrix facet comparison
* Integrated control and load balancing
* Simplified build and installation
|
* Reduced and debugged feature set (core)
* Freeze
|
* First "public" release--advertised from A1
|-
| beta2
| 2013-10-1
|
* Redone UI (Bootstrap 3)
|
* Fold in public beta feedback
|
* Release may be faster if UI redo goes well
* Transfer beta production to production?
* Production API deployment?
* "Clean" URLs
* Consider RCs
* Short training videos?
* (TBD) Another round of decrufting?
|-
| 2.0
| 2014-03-12
|
* Initial stable release
|
|
|-
| [https://github.com/kltm/amigo/issues?milestone=6&state=closed 2.1]
| 2014-05
|
* Term enrichment (via PANTHER/RTE) added
* Consistent flexible downloads on all search panes
* Added more options in results when searching for IDs through medial search
* Added more options to "related" downloads and pages on term and gene product details pages (including annotation downloads)
* Fixed header and field descriptions
* More components have been converted to Bootstrap 3 (better look and feel)
|
* Many smaller post-release fixes and adjustments
* Some features re-added
* Axis pulled back to labs
|
* Initial round of comments
|-
| [https://github.com/kltm/amigo/issues?milestone=7&state=closed 2.2]
| 2015-03
|
* Public bookmarking API
* New deployment system (simplified Apache and embedded server)
* Expanded unit testing into UI and data
|
* Progress towards BS3 completion
* Now back to PANTHER term enrichment
|
* Numerous outstanding data, error, and external resource upgrades/fixes (blocked from 2.1 by deployment change)
* Permanent seamless GOlr URL
|-
| [https://github.com/kltm/amigo/issues?milestone=8&state=closed 2.3]
| 2015-09
|
* Removal of internal TE facilities
* Numerous small usability and bug fixes
* New configuration system (JS-based single source and owltools lock-in)
|
* Unit tests are now properly integrated.
|
* A small release around bug/usability fixes and new configuration/loading management.
* Improved Jenkins dev workflow.
|-
| [https://github.com/kltm/amigo/issues?milestone=9&state=closed 2.4]
| 2016-08
|
* Drill-down ontology/annotation browser
* Matrix tool
* PMID search and intermediary pages
* Gannet (Solr search environment)
* Much improved statistics and graphics
* Use of taxon and evidence subsets in filters
* Numerous small usability and bug fixes
* Tons of minor features
|
* External Galaxy capabilities have been revived
* Ready to deal with Noctua models
* Better site separation
* RESTy API services
* OWLTools version lock
* gulpfile.js based installation
* JS widget library spinouts
|
* More items converted over to BS3, but some jQuery UI components remain.
* Download size can be increased, and there are now separated used variables for a download server--they just have to be created, etc.
* Experiments with geospatial filtering
|-
| [https://github.com/kltm/amigo/issues?milestone=10&state=open 2.5]
| 2018-04; rolling
|
* (TBD) Search improvements using Solr 6.x
* Bulk search?
* (TBD) OWLTools load speed-up -> IEA load?
* Numerous small usability and bug fixes
|
* TBD
|
* TBD
|}


AmiGO's other components are those that have specialized output in result of some kind of action.
== Future Feature Pool ==


*[[AmiGO_Manual:_BLAST | BLAST]]
* (Noctua) model integration
*[[AmiGO_Manual:_Slimmer | Slimmer]]
* IEAs
*[[AmiGO_Manual:_Term_Enrichment | Term Enrichment]]
* Search improvements (backend)
*[[AmiGO_Manual:_GOOSE | GOOSE]]
* Bulk Search and download tools
* Finish conversion to new look and feel (Bootstrap)
* Browse
* Browse (cytoscape/large)
* REPL
* GO Galaxy integration
* Gannet
* GOlr extensions
** New fields
** New search personalities (evidence aggregation, etc.)
* Phylotree integration
* Matrix tools


=Versions=
=Presentations=


The [[AmiGO_1_8 | current]] stable version is [[AmiGO_1_8 | 1.8]] (tagged amigo_1_8). It is available for direct download at [http://sourceforge.net/project/showfiles.php?group_id=36855 SourceForge.net ].
The AmiGO 2 presentation given at the BOSC 2012 is available at the Berkeley BOP [http://berkeleybop.org/document/bosc-2012-amigo-2 site].
 
Information on the [[AmiGO_1_8 | upcoming]] version is at the [[AmiGO_1_8 | 1.8]] site. There is also an article and link to the current [[ AmiGO_Labs | labs]] site.
 
Version numbers are as follows:
 
A.B.C.D
 
A = Major release
B = Standard release (general testing)
C = Bugfix release (test of fixes)
D = Text fix release (minor changes that don't need testing)
 
The last two numbers are mostly for internal use.
 
= Articles =
 
[http://www.pubmedcentral.nih.gov/articlerender.fcgi?artid=2639003 Application note] in Bioinformatics.
 
= Working Group Information =
 
[[AmiGO_Hub | AmiGO Hub Working Group]]
 
[[Web_Presence_Working_Group | Web Presence Working Group]]
 
[[Category:AmiGO]]
[[Category:AmiGO_2]]
[[Category:Software]]

Latest revision as of 18:31, 2 July 2018

Status

Currently in production.

Introduction

AmiGO 2 is a project to create the next generation of AmiGO--the current official web-based set of tools for searching and browsing the Gene Ontology database.

For an overview of features, please see the overview documentation.

For installation information, please see the installation documentation.

AmiGO 2

While we sometimes talk about AmiGO 2 as a unified project, its component parts are currently broken into three groups in two different repositories: GOlr (backend and loading) and the perl and JavaScript portions of the frontend.

GOlr: The Backend

The most fundamental change from the old AmiGO is the backend containing the Gene Ontology data--the MySQL relational database, has been replaced and is now loaded directly into a Solr document store, dubbed GOlr.

This new backend not only provides the engine for running AmiGO, but can be used by anybody as a web service by itself. More information is available on the GOlr page.

The Perl and JavaScript Frontend

The AmiGO 2 frontend is the user layer over the GOlr backend. Some components of AmiGO 2 use perl libraries to communicate with the GOlr backend (and other remote sources), process the results, and display them to the user. Other components (JavaScript APIs) communicate directly with the GOlr backend.

JavaScript API

The beta public JavaScript APIs will eventually be available at http://api.berkeleybop.org. While a permanent home for the JSAPI is being considered as we move into beta, preview documentation is available at http://api.berkeleybop.org/amigo2/docs/ .

Development

The current version is 'trunk'. It is in active development.

The backend GOlr loading code is available on Google Code, please see the GOlr page for more details.

The frontend code is broken between AmiGO 2-specific code repo and a more generic JavaScript/JavaScript API code repo, both are hosted on GitHub. The former can be found here and the latter here.

More detailed instructions on installation are pending, but the front page both both repositories are a great place to start.

List

There is mailing list for AmiGO 2 development here.

Compatibility

Backend

The backend is developed in Ubuntu 12.04 and 12.10. It has also been run successfully on Mac OSX 10.7. Given these two, it is expected to run on any fairly well-behaved modern *nix platform.

Frontend

AmiGO 2 should be compatible with most modern operating system/browser combinations with good JavaScript and CSS support. However, at this time, extensive testing has not been done. AmiGO 2 is mostly developed with Firefox, Chrome, and Opera on several versions of GNU/Linux.

Repositories and Trackers

The repositories and trackers for the elements that compose AmiGO 2 are:

  • Backend
    • GOlr - Solr schema and definitions for GO (in the AmiGO 2 repository)
    • OWLTools - preferred loader
  • Frontend
    • BBOP JS - general JS code
    • AmiGO 2 - JavaScript/Perl code and web server deployment; GO specific BBOP JS code

Timeline

tag release highlight features feature notes comments
beta0 2013-04-12
  • Initial possible feature set
  • First external-usable A2 release
beta1 2013-07-15
  • Search
  • Grebe
  • Details pages
  • GOOSE
  • Axis/matrix facet comparison
  • Integrated control and load balancing
  • Simplified build and installation
  • Reduced and debugged feature set (core)
  • Freeze
  • First "public" release--advertised from A1
beta2 2013-10-1
  • Redone UI (Bootstrap 3)
  • Fold in public beta feedback
  • Release may be faster if UI redo goes well
  • Transfer beta production to production?
  • Production API deployment?
  • "Clean" URLs
  • Consider RCs
  • Short training videos?
  • (TBD) Another round of decrufting?
2.0 2014-03-12
  • Initial stable release
2.1 2014-05
  • Term enrichment (via PANTHER/RTE) added
  • Consistent flexible downloads on all search panes
  • Added more options in results when searching for IDs through medial search
  • Added more options to "related" downloads and pages on term and gene product details pages (including annotation downloads)
  • Fixed header and field descriptions
  • More components have been converted to Bootstrap 3 (better look and feel)
  • Many smaller post-release fixes and adjustments
  • Some features re-added
  • Axis pulled back to labs
  • Initial round of comments
2.2 2015-03
  • Public bookmarking API
  • New deployment system (simplified Apache and embedded server)
  • Expanded unit testing into UI and data
  • Progress towards BS3 completion
  • Now back to PANTHER term enrichment
  • Numerous outstanding data, error, and external resource upgrades/fixes (blocked from 2.1 by deployment change)
  • Permanent seamless GOlr URL
2.3 2015-09
  • Removal of internal TE facilities
  • Numerous small usability and bug fixes
  • New configuration system (JS-based single source and owltools lock-in)
  • Unit tests are now properly integrated.
  • A small release around bug/usability fixes and new configuration/loading management.
  • Improved Jenkins dev workflow.
2.4 2016-08
  • Drill-down ontology/annotation browser
  • Matrix tool
  • PMID search and intermediary pages
  • Gannet (Solr search environment)
  • Much improved statistics and graphics
  • Use of taxon and evidence subsets in filters
  • Numerous small usability and bug fixes
  • Tons of minor features
  • External Galaxy capabilities have been revived
  • Ready to deal with Noctua models
  • Better site separation
  • RESTy API services
  • OWLTools version lock
  • gulpfile.js based installation
  • JS widget library spinouts
  • More items converted over to BS3, but some jQuery UI components remain.
  • Download size can be increased, and there are now separated used variables for a download server--they just have to be created, etc.
  • Experiments with geospatial filtering
2.5 2018-04; rolling
  • (TBD) Search improvements using Solr 6.x
  • Bulk search?
  • (TBD) OWLTools load speed-up -> IEA load?
  • Numerous small usability and bug fixes
  • TBD
  • TBD

Future Feature Pool

  • (Noctua) model integration
  • IEAs
  • Search improvements (backend)
  • Bulk Search and download tools
  • Finish conversion to new look and feel (Bootstrap)
  • Browse
  • Browse (cytoscape/large)
  • REPL
  • GO Galaxy integration
  • Gannet
  • GOlr extensions
    • New fields
    • New search personalities (evidence aggregation, etc.)
  • Phylotree integration
  • Matrix tools

Presentations

The AmiGO 2 presentation given at the BOSC 2012 is available at the Berkeley BOP site.