Difference between revisions of "JBrowse"

From GMOD
Jump to: navigation, search
(JBrowse Configuration Guide)
 
(40 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{ComponentBox|{{JBrowseResourcesBoxItem}}|<!--{{ComponentBoxEventsHeader}}||{{GMODAmericas2011BoxItem|2011 GMOD Spring Training|GMOD Spring Training|March 8-12}}-->|| | | |}}
+
{{Tool data
 +
|name=JBrowse
 +
|status=mature
 +
|dev=active
 +
|support=active
 +
|type=Genome visualization
 +
|platform=web
 +
|about=JBrowse is a genome browser with a fully dynamic AJAX interface, being developed as the eventual successor to GBrowse. It is very fast and scales well to large datasets. JBrowse is javascript-based and does almost all of its work directly in the user's web browser, with minimal requirements for the server.
  
JBrowse is a genome browser with a fully dynamic [[Glossary#AJAX|AJAX]] interface, being developed as the eventual successor to [[GBrowse]].  It is very fast and scales well to large datasets.  JBrowse does almost all of its work directly in the user's web browser, with minimal requirements for the server.
+
===Features===
  
= Demo =
+
*Fast, smooth scrolling and zooming. Explore your genome with unparalleled speed.
 +
*Scales easily to multi-gigabase genomes and deep-coverage sequencing.
 +
*Supports GFF3, BED, FASTA, Wiggle, BigWig, BAM, VCF (with tabix), REST, and more.  BAM, BigWig, and VCF data are displayed directly from the compressed binary file with no conversion needed.
 +
*Very light server resource requirements. In fact, JBrowse has no back-end server code, just tools for formatting data files to be read directly over HTTP. Serve huge datasets from a single low-cost cloud instance.
 +
|open source=Yes
 +
|licence=[http://opensource.org/licenses/LGPL-3.0 LGPL], [http://opensource.org/licenses/Artistic-2.0 Artistic License 2.0]
 +
|input=[[GFF3]], BED, FASTA, WIG, BedGraph, Bio::DB::*, UCSC, Wiggle, BigWig, BAM
 +
|language=Javascript, Perl
 +
|audience=public
 +
|release date=2008
 +
|use template=Yes
 +
|logo=JBrowseLogo.png
 +
|screenshot=[[File:JBrowse_alignment_and_coverage.png|600px|center]]
 +
|mail=Please direct questions and inquiries regarding JBrowse to the mailing lists below.''Requests for help should be directed to [mailto:gmod-ajax@lists.sourceforge.net gmod-ajax@lists.sourceforge.net].''{{MailingListsFor|JBrowse}}gmod-ajax@lists.sourceforge.net
 +
|papers=
  
[http://jbrowse.org/genomes/dmel/ ''D. melanogaster'']
+
* JBrowse: a next-generation genome browser (2009)<ref name="PMID:19570905">*JBrowse: a next-generation genome browser </ref>
 +
* Setting up the JBrowse genome browser (2010)<ref name="PMID:21154710">*Setting up the JBrowse genome browser </ref>
 +
* Visualizing next-generation sequencing data with JBrowse (2013)<ref name="PMID:22411711">* Visualizing next-generation sequencing data with JBrowse</ref>
 +
* JBrowse: a dynamic web platform for genome visualization and analysis (2016)<ref name="PMID: 27072794">* JBrowse: a dynamic web platform for genome visualization and analysis</ref>
 +
|presentations=* April 2013 - Bio-IT World, Robert Buels: [[Media:JBrowse_bioit_world_apr2013.pdf|PDF]]
 +
* August 2012 - presentation given as part of the [[2012 GMOD Summer School]]: [[Media:JBrowse_gmod_aug2012.pdf|PDF]]
 +
* April 2012 - GMOD 2012 Community Meeting, Robert Buels: [[Media:RBuels_JBrowse_apr2012.pdf|PDF]]
 +
* January 2012 -  Plant and Animal Genome (PAG) XX: [[Media:Rbuels_jbrowse_pag2012.pdf|PDF]]
 +
* April 2010 - UCSC genome browser group ("genecats") meeting: [[Media:JBrowse-UCSC-4-21-10.pdf|PDF]]
 +
* August 2009 - [[August 2009 GMOD Meeting|GMOD Community Meeting]]: [[ August 2009 GMOD Meeting#JBrowse  | Talk summary ]]
 +
|tutorials=;[[JBrowse Tutorial]] covering installation and configuration
 +
:part of the [[2013 GMOD Summer School]]
 +
;[http://jbrowse.org/code/latest-release/docs/tutorial/ Getting Started with JBrowse Tutorial]
 +
:part of the JBrowse documentation
 +
;[[Media:Exploring_structural_variation_in_the_tomato_clade_using_JBrowse.pdf | Exploration of structural variation in the tomato clade using JBrowse]]
 +
:Tutorial explaining how to browse structural variants from the [http://www.tomatogenome.net 150+ tomato genome resequencing project] using JBrowse
 +
|getting started preamble=The [http://jbrowse.org/code/latest-release/docs/tutorial/ JBrowse Quick-Start Tutorial] provides a basic step-by-step recipe for quickly getting up and running with JBrowse.
 +
|req=JBrowse requires libpng, Zlib, and GD development libraries, plus make and a C compiler.  On Ubuntu, you can install these prerequisites using the command:
  
[[Image:JBrowseShot2.png|border|700px|link=http://jbrowse.org/genomes/dmel/|Demo screenshot from 2009/03/24, showing region of ''Drosophila melanogaster'' 2R.]]
+
  sudo apt-get install libpng-dev libgd2-noxpm-dev build-essential
  
=Quick Start: Tutorial=
+
For tips on installing these baseline libraries, see [[JBrowse Troubleshooting]].
 +
|install=The [http://jbrowse.org/code/latest-release/docs/tutorial/ JBrowse Quick-Start Tutorial] provides a basic step-by-step recipe for quickly getting up and running with JBrowse.
  
The [http://jbrowse.org/code/latest-release/docs/tutorial/ Getting Started with JBrowse Tutorial] provides a basic step-by-step recipe for quickly getting up and running with JBrowse.
 
 
=Installation=
 
  
 
1. [http://jbrowse.org/install/ Download JBrowse] onto your web server.
 
1. [http://jbrowse.org/install/ Download JBrowse] onto your web server.
Line 20: Line 56:
  
 
     cd /var/www
 
     cd /var/www
     tar -xzf jbrowse-*.tar.gz
+
     unzip JBrowse-*.zip
 
+
'''Make sure you have permissions to write to the contents of the jbrowse/ directory you have just created.'''
+
 
+
3. Run the automated-setup script, <code>./setup.sh</code>, which will attempt to install all of JBrowse's (modest) prerequisites for you in the <code>jbrowse/</code> directory itself.  <code>setup.sh</code> does not need to be run as root or with <code>sudo</code>.  For the installation to completely succeed, including support for WIG and BAM data, your system must have:
+
 
+
* a working internet connection for downloading Perl modules from CPAN
+
* compilers for C and C++
+
* <code>make</code>
+
* the <code>svn</code> Subversion client (for fetching the <code>samtools</code> code, needed for BAM support)
+
* '''development''' libraries and header files (not just compiled shared objects) for:
+
** libpng
+
** Zlib
+
** GD
+
 
+
For tips on installing these baseline libraries, see [[JBrowse Troubleshooting]].
+
 
+
4. When you can see the included Volvox example data, you are ready to
+
configure JBrowse to show your own data!  Proceed to the [[JBrowse Configuration Guide]].
+
 
+
= JBrowse Configuration Guide =
+
 
+
* [[JBrowse Configuration Guide|Configuration Guide]]
+
** [[JBrowse Configuration Guide#Reference Sequences|Formatting reference sequences]] (e.g. from FASTA files, or a Chado database)
+
** [[JBrowse Configuration Guide#Feature Tracks|Creating feature tracks]] (e.g. from BED or GFF files, a Chado database, or the UCSC genome browser)
+
** [[JBrowse Configuration Guide#Image Tracks|Creating image tracks]] (e.g. from WIG files)
+
** [[JBrowse Configuration Guide#Searchable Names|Making features searchable by name]]
+
** [[JBrowse Configuration Guide#Removing Tracks|Removing tracks]]
+
** [[JBrowse Configuration Guide#Compressing data stored on the server|Compressing data stored on the server]]
+
** [[JBrowse Configuration Guide#Using callbacks to customize feature tracks | Using callbacks to customize feature tracks ]]
+
** [[JBrowse Configuration Guide#Faceted Track Selection | Faceted track selection ]]
+
** [[JBrowse Configuration Guide#Name Searching and Autocompletion | Name searching and autocompletion]]
+
** [[JBrowse Configuration Guide#Anonymous Usage Statistics | Anonymous usage statistics ]]
+
 
+
* Additional topics:
+
** [[JBrowseDev/Using Configuration Files With JBrowse|Using Configuration Files with biodb-to-json.pl]]
+
** [[JBrowseDev/Using a Database With JBrowse|Using a Database]]
+
 
+
= JBrowse Advanced Topics =
+
 
+
For data format specifications, developer information, and so forth, see [[JBrowse Advanced Topics]].
+
  
= Contact =
+
'''Make sure you have permissions to write to the contents of the <code>jbrowse/</code> directory you have just created.'''
  
Please direct questions and inquiries regarding JBrowse to the mailing lists below.
+
3. Run the automated-setup script, <code>./setup.sh</code>, which will attempt to install all of JBrowse's (modest) prerequisites for you in the <code>jbrowse/</code> directory itself.  Note that <code>setup.sh</code> does not need to be run as root or with <code>sudo</code>.  For help troubleshooting failures of setup.sh, see [[JBrowse Troubleshooting]].
  
'''In particular, requests for help should be directed to [mailto:gmod-ajax@lists.sourceforge.net gmod-ajax@lists.sourceforge.net].'''
+
4. Visit JBrowse on your machine, substituting the <nowiki>http://(your_machine/path_to_jbrowse)/index.html?data=sample_data/json/volvox</nowiki>.  If you can see the included Volvox example data, you are ready to configure JBrowse to show your own data!
 +
|config=See the [[JBrowse Configuration Guide]] for information on:
 +
* [[JBrowse Configuration Guide#Reference Sequences|Formatting reference sequences]] (e.g. from FASTA files, or a Chado database)
 +
* [[JBrowse Configuration Guide#Feature Tracks|Feature Tracks]] (e.g. from BED or GFF files, a Chado database, or the UCSC genome browser)
 +
* [[JBrowse Configuration Guide#Image Tracks|Image Tracks]] (e.g. from WIG files)
 +
* [[JBrowse Configuration Guide#Wiggle_Tracks|Wiggle/BigWig Tracks]]
 +
* [[JBrowse Configuration Guide#Name_Searching_and_Autocompletion | Name Search and Autocompletion]]
 +
* [[JBrowse Configuration Guide#Removing Tracks|Removing tracks]]
 +
* [[JBrowse Configuration Guide#Compressing data on the server|Compressing data stored on the server]]
 +
* [[JBrowse Configuration Guide#URL Control | URL control ]]
 +
* [[JBrowse Configuration Guide#Faceted Track Selection | Faceted track selection ]]
 +
* [[JBrowse Configuration Guide#Anonymous Usage Statistics | Anonymous usage statistics ]]
  
{{MailingListsFor|JBrowse}}
+
Additional topics:
 +
* [[JBrowseDev/Using a Database With JBrowse|Using an Existing Database with JBrowse]]
  
= JBrowse Development =
+
== Upgrading JBrowse ==
  
JBrowse is an open-source project, started and managed by the laboratory of '''[mailto:ihh@berkeley.edu Ian Holmes]''' at the [http://berkeley.edu University of California, Berkeley].
+
To upgrade an existing JBrowse (1.3.0 or later) to the latest version, simply move its data directory (and <code>jbrowse_conf.json</code> if you are using it) into the directory of a newer JBrowse, and the new JBrowse will display that data.
  
The [http://github.com/GMOD/jbrowse JBrowse source code repository] is kept on GitHub. Please feel very free to fork the code on GitHub and make modifications and improvements, submitting pull requests. GitHub has a very nice [http://help.github.com/fork-a-repo/ tutorial] on how to get started with this style of development.
+
To upgrade a 1.2.x JBrowse, copy its data directory into the new JBrowse directory, and point your browser at compat_121.html in the new JBrowse directory, instead of index.html.
  
As of January 2012, the lead developer of JBrowse is [[User:RobertBuels|Robert Buels]].  Most of JBrowse was originally written by [mailto:mitch_skinner@berkeley.edu Mitch Skinner].
+
If you are upgrading from a version of JBrowse older than 1.2.0, a fresh installation is required.
 +
|doc=*[http://gmod.org/wiki/JBrowse_Configuration_Guide JBrowse configuration reference]
 +
*[http://jbrowse.org/code/latest-release/docs/tutorial JBrowse quick start]
 +
*[http://gmod.org/wiki/JBrowse_FAQ JBrowse setup FAQ]
 +
|extra={{GitcComponent}}
 +
|survey link=
 +
|contact email=[rbuels@gmail.com Rob Buels]
 +
|integration=
 +
|dev status=The [http://github.com/GMOD/jbrowse JBrowse source code repository] is kept on GitHubPlease feel very free to fork the code on GitHub and make modifications and improvements, submitting pull requests.  GitHub has a very nice [http://help.github.com/fork-a-repo/ tutorial] on how to get started with this style of development.
 +
}}
  
There is a [[#Mailing Lists|mailing list for developers]], and there is usually a teleconference on the 3rd Monday of the month at 2pm Pacific US time.  We welcome participation from Please contact [[User:RobertBuels|Robert Buels]] if you would like to listen in or participate.
 
  
= Presentations =
 
  
{| class="wikitable"
+
{{SemanticLink
! Date
+
|linkurl=http://jbrowse.org/install/
! Presenter
+
|linktype=download
! Venue
+
}}
! Links
+
{{SemanticLink
|-
+
|linkurl=http://jbrowse.org
| April 2012
+
|linktype=website
| Robert Buels
+
}}
| GMOD 2012 Community Meeting
+
{{SemanticLink
| [[Media:RBuels_JBrowse_apr2012.pdf|PDF]]
+
|linkurl=http://twitter.com/usejbrowse
|-
+
|linktype=social media
| January 2012
+
}}
| Robert Buels
+
{{SemanticLink
| Plant and Animal Genome (PAG) XX
+
|linkurl=http://github.com/GMOD/jbrowse
| [[Media:Rbuels_jbrowse_pag2012.pdf|PDF]]
+
|linktype=source code
|-
+
}}
| April 2010
+
{{SemanticLink
| Mitch Skinner
+
|linkurl=http://jbrowse.org/demos
| UCSC genome browser group ("genecats") meeting
+
|linktitle=JBrowse demos
| [[Media:JBrowse-UCSC-4-21-10.pdf|PDF]]
+
|linktype=demo server
|-
+
}}
|August 2009
+
{{SemanticLink
|Ian Holmes
+
|linkurl=http://icemangenome.net/‎
|[[August 2009 GMOD Meeting|GMOD Community Meeting]]
+
|linktitle=Ice Man Genome
|[[ August 2009 GMOD Meeting#JBrowse  | Talk summary ]] | [[Media:Aug2009JBrowse.pdf|PDF]]
+
|linktype=wild URL
|-
+
|linkdesc=Browse the genome of Ötzi the ice man
|January 2009
+
}}
|Mitch Skinner
+
{{SemanticLink
|[[January 2009 GMOD Meeting|GMOD Community Meeting]]
+
|linkurl=http://genomesunzipped.org/jbrowse
|[[ January 2009 GMOD Meeting#JBrowse  | Talk summary ]] | [[:Image:Jan2009JBrowse.pdf|PDF]]
+
|linktitle=Genomes Unzipped: Public Personal Genomics
|-
+
|linktype=wild URL
|July 2008
+
}}
|Ian Holmes
+
{{SemanticLink
|[[July 2008 GMOD Meeting|GMOD Community Meeting]]
+
|linkurl=http://beetlebase.org
|[[ July 2008 GMOD Meeting#GBrowse 3.0 | Talk summary ]] | [[:Image:GBrowse3GMOD2008.pdf|PDF]]
+
|linktitle=BeetleBase
|-
+
|linktype=wild URL
|}
+
}}
 +
{{SemanticLink
 +
|linkurl=http://www.medicinalgenomics.com/the-jane-ome/
 +
|linktitle=The Jane-Ome, medicinal marijuana project
 +
|linktype=wild URL
 +
}}
  
 
[[Category:GMOD Components]]
 
[[Category:GMOD Components]]
 
[[Category:AJAX]]
 
[[Category:AJAX]]
 
[[Category:JBrowse]]
 
[[Category:JBrowse]]

Latest revision as of 19:18, 15 April 2016

JBrowse logo
Status
  • Mature release
  • Development: active
  • Support: active
Licence
{{{PAGENAME}}} is open source

LGPL, Artistic License 2.0

Resources


About JBrowse

JBrowse is a genome browser with a fully dynamic AJAX interface, being developed as the eventual successor to GBrowse. It is very fast and scales well to large datasets. JBrowse is javascript-based and does almost all of its work directly in the user's web browser, with minimal requirements for the server.

Features

  • Fast, smooth scrolling and zooming. Explore your genome with unparalleled speed.
  • Scales easily to multi-gigabase genomes and deep-coverage sequencing.
  • Supports GFF3, BED, FASTA, Wiggle, BigWig, BAM, VCF (with tabix), REST, and more. BAM, BigWig, and VCF data are displayed directly from the compressed binary file with no conversion needed.
  • Very light server resource requirements. In fact, JBrowse has no back-end server code, just tools for formatting data files to be read directly over HTTP. Serve huge datasets from a single low-cost cloud instance.


Visit the JBrowse website.

Screenshots

JBrowse alignment and coverage.png

Downloads

Using JBrowse

The JBrowse Quick-Start Tutorial provides a basic step-by-step recipe for quickly getting up and running with JBrowse.

System Requirements

JBrowse requires libpng, Zlib, and GD development libraries, plus make and a C compiler. On Ubuntu, you can install these prerequisites using the command:

 sudo apt-get install libpng-dev libgd2-noxpm-dev build-essential

For tips on installing these baseline libraries, see JBrowse Troubleshooting.

Installation

The JBrowse Quick-Start Tutorial provides a basic step-by-step recipe for quickly getting up and running with JBrowse.


1. Download JBrowse onto your web server.

2. Unpack JBrowse into a directory that is served by your web browser. On many systems, this defaults to /var/www.

   cd /var/www
   unzip JBrowse-*.zip

Make sure you have permissions to write to the contents of the jbrowse/ directory you have just created.

3. Run the automated-setup script, ./setup.sh, which will attempt to install all of JBrowse's (modest) prerequisites for you in the jbrowse/ directory itself. Note that setup.sh does not need to be run as root or with sudo. For help troubleshooting failures of setup.sh, see JBrowse Troubleshooting.

4. Visit JBrowse on your machine, substituting the http://(your_machine/path_to_jbrowse)/index.html?data=sample_data/json/volvox. If you can see the included Volvox example data, you are ready to configure JBrowse to show your own data!

Configuration

See the JBrowse Configuration Guide for information on:

Additional topics:

Upgrading JBrowse

To upgrade an existing JBrowse (1.3.0 or later) to the latest version, simply move its data directory (and jbrowse_conf.json if you are using it) into the directory of a newer JBrowse, and the new JBrowse will display that data.

To upgrade a 1.2.x JBrowse, copy its data directory into the new JBrowse directory, and point your browser at compat_121.html in the new JBrowse directory, instead of index.html.

If you are upgrading from a version of JBrowse older than 1.2.0, a fresh installation is required.

Documentation

Publications, Tutorials, and Presentations

Publications on or mentioning JBrowse

  • JBrowse: a next-generation genome browser (2009)[1]
  • Setting up the JBrowse genome browser (2010)[2]
  • Visualizing next-generation sequencing data with JBrowse (2013)[3]
  • JBrowse: a dynamic web platform for genome visualization and analysis (2016)[4]

Tutorials

JBrowse Tutorial covering installation and configuration
part of the 2013 GMOD Summer School
Getting Started with JBrowse Tutorial
part of the JBrowse documentation
Exploration of structural variation in the tomato clade using JBrowse
Tutorial explaining how to browse structural variants from the 150+ tomato genome resequencing project using JBrowse

Presentations

Contacts and Mailing Lists

Please direct questions and inquiries regarding JBrowse to the mailing lists below.Requests for help should be directed to gmod-ajax@lists.sourceforge.net.

Mailing List Link Description Archive(s)
JBrowse gmod-ajax JBrowse help and general questions. Nabble (2010/05+), Sourceforge
jbrowse-dev JBrowse development discussions. Nabble (2011/08+)
gmod-ajax@lists.sourceforge.net

JBrowse in the wild

Public installations of JBrowse:

JBrowse Development

Current status

The JBrowse source code repository is kept on GitHub. Please feel very free to fork the code on GitHub and make modifications and improvements, submitting pull requests. GitHub has a very nice tutorial on how to get started with this style of development.

More on JBrowse

See Category:JBrowse


  1. *JBrowse: a next-generation genome browser
  2. *Setting up the JBrowse genome browser
  3. * Visualizing next-generation sequencing data with JBrowse
  4. * JBrowse: a dynamic web platform for genome visualization and analysis
Facts about "JBrowse"RDF feed
Available on platformweb +
Has URLhttp://jbrowse.org/install/ +, http://jbrowse.org +, http://twitter.com/usejbrowse +, http://github.com/GMOD/jbrowse +, http://jbrowse.org/demos +, http://icemangenome.net/%E2%80%8E +, http://genomesunzipped.org/jbrowse +, http://beetlebase.org + and http://www.medicinalgenomics.com/the-jane-ome/ +
Has descriptionJBrowse is a genome browser with a fully dJBrowse is a genome browser with a fully dynamic AJAX interface, being developed as the eventual successor to GBrowse. It is very fast and scales well to large datasets. JBrowse is javascript-based and does almost all of its work directly in the user's web browser, with minimal requirements for the server.

Features[edit]

  • Fast, smooth scrolling and zooming. Explore your genome with unparalleled speed.
  • Scales easily to multi-gigabase genomes and deep-coverage sequencing.
  • Supports GFF3, BED, FASTA, Wiggle, BigWig, BAM, VCF (with tabix), REST, and more. BAM, BigWig, and VCF data are displayed directly from the compressed binary file with no conversion needed.
  • Very light server resource requirements. In fact, JBrowse has no back-end server code, just tools for formatting data files to be read directly over HTTP. Serve huge datasets from a single low-cost cloud instance.ets from a single low-cost cloud instance. + and Browse the genome of Ötzi the ice man +
Has development statusactive +
Has input formatGFF3 +, BED +, FASTA +, WIG +, BedGraph +, Bio::DB::* +, UCSC +, Wiggle +, BigWig + and BAM +
Has licenceLGPL + and Artistic License 2.0 +
Has logoJBrowseLogo.png +
Has software maturity statusmature +
Has support statusactive +
Has titleJBrowse demos +, Ice Man Genome +, Genomes Unzipped: Public Personal Genomics +, BeetleBase + and The Jane-Ome, medicinal marijuana project +
Has topicJBrowse +
Is open sourceYes +
Link typedownload +, website +, social media +, source code +, demo server + and wild URL +
Release date2008 +
Tool functionality or classificationGenome visualization +
Written in languageJavascript + and Perl +
Has subobjectThis property is a special property in this wiki.JBrowse#http://jbrowse.org/install/ +, JBrowse#http://jbrowse.org +, JBrowse#http://twitter.com/usejbrowse +, JBrowse#http://github.com/GMOD/jbrowse +, JBrowse#http://jbrowse.org/demos +, JBrowse#http://icemangenome.net/‎ +, JBrowse#http://genomesunzipped.org/jbrowse +, JBrowse#http://beetlebase.org + and JBrowse#http://www.medicinalgenomics.com/the-jane-ome/ +