Skip to main content

v3.4.0 Release

· 3 min read

Hello all, this release adds a small set of features and bugfixes

Improved gene name searching

We added a fuzzy finder library (uFuzzy) that helps prioritize the results returned by our text search (e.g. trix), so gene name searching should provide much more relevant results

Updated documentation with new screenshots

We updated gallery (https://jbrowse.org/jb2/gallery/) with new screenshots and live links, and are rolling out updated screenshots throughout the docs pages to be more up to date and high quality

Misc

We also fixed a bug in methylation/modifications rendering that caused crashes in v3.2.0-v3.3.0 and updated Electron to v36 (which now uses GTK4 on linux)

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.18 $ lerna-changelog --silent --silent --next-version 3.4.0

3.4.0 (2025-05-13)

🚀 Enhancement

  • core
    • #5018 Avoid serializing large features to sessions to fix quota exceeded errors in localstorage (@cmdcolin)
    • #5010 Add mouseover metadata for fields in the base feature widget (@cmdcolin)
    • #4998 Add padding to the genomic window of search result hits (@cmdcolin)
    • #4995 Add uFuzzy to improve gene name search (@cmdcolin)
    • #4983 Update some data parser packages for ESM compat (@cmdcolin)
    • #4980 Synthesize displayId if none provided in display config (@cmdcolin)
    • #4972 Support cytoband bed files starting with "#" (@cmdcolin)
  • Other
    • #5008 Allow parsing non-indexed BED files larger than 512MB (@cmdcolin)
    • #4997 Better message for "quota exceeded" message from localstorage (@cmdcolin)
    • #4974 Minor optimizations in multi-sample variant rendering (@cmdcolin)
    • #4973 Add basic cytoband for Drosophila (@cmdcolin)
    • #4970 Dynamically toggle wheel-scroll normalization to improve touchpad pinch-to-zoom usage (@cmdcolin)

🐛 Bug Fix

  • core
    • #5013 Fix UCSC chain parsing which have header lines (@cmdcolin)
    • #4993 Fix re-export of @mui/material/styles, and re-export theme (@cmdcolin)
    • #4968 Fix theme augmentation for primary/secondary colors in v3.3.0 (@cmdcolin)
  • Other
    • #5004 Fix modifications rendering broken in v3.2.0 (@cmdcolin)
    • #4992 Fix mouseover for some variable width bigwig features (@cmdcolin)
    • #4984 Avoid rendering 'yellow' for low scores in wiggle density renderings with 'log-scale' enabled (@cmdcolin)
    • #4969 Avoid aggregating bigbed features with geneName === 'none' (@cmdcolin)

📝 Documentation

🏠 Internal

Committers: 2

v3.3.0 Release

· 3 min read

Hello all,

This release adds a significant update to the multi-variant renderer that allows it to be used for visualizing structural variants Previously, all variants >10bp were filtered out, with the idea that overlapping variants are too difficult to interpret

This PR now allows drawing large structural variants in the multi-sample variant display type. It will actually draw long, even overlapping, structural variants!

image

Figure: Screenshot showing many SV calls over a 5Mbp+ region from the 3,202 human samples from the 1000 genomes project, with a large "inversion" variant showing the shaded triangles. The right side panel shows the feature details for this inversion variant showing the new genotype frequency panel, indicating about 47% of samples have a 'heterozygous' inversion call here

image

Loading a random track, and turning on the arc display, there are indications of a large variant for a random sample here (green and navy arcs indicate discordant read pairing associated with inversion)

We hope that you enjoy these new features! The visualizations may be visually complex but we hope it can be a magnifying glass to reveal important patterns of your datasets! Feel free to let us know if you have any feedback

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.3.0

3.3.0 (2025-04-18)

🚀 Enhancement

🐛 Bug Fix

  • Other
    • #4929 Fix broken bigbed features when there is gene level aggregation (@cmdcolin)
  • core

📝 Documentation

  • core
    • #4949 Controlling navigation of embedded component - storybook examples (@cmdcolin)
    • #4924 Add config docs for pre-processors with simplified config snapshots (@cmdcolin)
  • Other

🏠 Internal

  • core

Committers: 1

v3.2.0 Release

· 2 min read

Hello all,

This release includes a new ability to provide simplified snapshots to the linear genome view, a new built-in clustering method for genotypes, and more

In-app clustering

In recent versions, we provided the ability to cluster genotype and multi-wiggle tracks, however we provided an R script for users to perform clustering externally and import the results

With this release, we have added a basic in-app clustering workflow, greatly improving the ease-of-use of this feature

image

Screenshot of the in-app clustering user interface

Renamed embedded packages and restored vanillajs builds

We have renamed our embedded packages

  • Renamed @jbrowse/react-linear-genome-view -> @jbrowse/react-linear-genome-view2
  • Renamed @jbrowse/react-circular-genome-view -> @jbrowse/react-circular-genome-view2
  • Renamed @jbrowse/react-app -> @jbrowse/react-app2

Motivation: our vanillajs builds, which people often pointed to the "latest" release on from CDN networks, were no longer able to be updated in a backwards compatible way.

Therefore, we have renamed the packages, and updated tutorials.

This allows us to continue updating the package without any breakage for existing users. Please let us know if you run into any issues!

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.2.0

3.2.0 (2025-03-22)

🚀 Enhancement

  • core
    • #4919 Add in-app clustering method for multi-wiggle tracks (@cmdcolin)
    • #4909 Add ability to load refNameAliases from chromAliases.bb file (@cmdcolin)
    • #4906 Add in-app clustering method for genotype matrix (@cmdcolin)
  • Other
    • #4914 Allow looking up header column by name for RefNameAliases (@cmdcolin)
    • #4910 Allow refNameColumn in RefNameAliasAdapter to override the default displayed refnames (@cmdcolin)
    • #4907 Simplified snapshot API for initial navigation of LGV (@cmdcolin)
  • app-core, core, product-core, web-core
    • #4899 Add aborting to multi-variant rendering, multi-wiggle rendering (@cmdcolin)

🐛 Bug Fix

  • #4920 Fix issue where multi-level linear synteny view would show a blank tracklist (@cmdcolin)
  • #4913 Fix parent aggregation in BigBed files using larger request window (@cmdcolin)
  • #4905 Fix bug where applying genotype clustering twice produces randomness (@cmdcolin)
  • #4897 Fix clustering for certain sets of bigwig files (@cmdcolin)

Committers: 1

v3.1.0 Release

· 3 min read

This release adds several interesting features including

Sticky view headers and pinned tracks

We created a new UI where the "view header" stays visible even when scrolling the page.

We also added the ability to "pin" tracks in the linear genome view, which also stay visible when scrolling the page.

Cluster multi-quantitative tracks

Motivated by the clustering workflow in the Multi-variant viewer, a similar feature was added to the multi-quantitative track

To do this, we sample the data according to the current zoom level (otherwise, it would create very large matrices at per-base resolution) and then provide an R script the user can run to cluster the data

Before clustering image

After clustering Screenshot From 2025-03-11 00-25-06

Simplify some adapter configuration

The configuration system has a lot of complex substructure, but in this release we created the ability to supply a simplified config, and the results will be auto-determined

For example

{
"type": "AlignmentsTrack",
"trackId": "volvox_alignments",
"name": "volvox-sorted.bam",
"assemblyNames": ["volvox"],
"adapter": {
"type": "BedGraphTabixAdapter",
"bedGraphGzLocation": {
"uri": "file.bed.gz"
},
"index": {
"location": {
"uri": "file.bed.gz.tbi"
}
}
}
}

after

{
"type": "AlignmentsTrack",
"trackId": "volvox_alignments",
"name": "volvox-sorted.bam",
"assemblyNames": ["volvox"],
"adapter": {
"type": "BedGraphTabixAdapter",
"uri": "file.bed.gz"
}
}

The CLI tools and other systems will continue to output the verbose version for the time being, but this simplified system will be handy to anyone who does hand-coding of the configuration

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.1.0

3.1.0 (2025-03-14)

🚀 Enhancement

  • Other
    • #4876 Allow inferring default values of adapter urls to simplify config.json (@cmdcolin)
    • #4875 Add sample data from HGSVCv3 to 1000 genomes demo and config_demo (@cmdcolin)
    • #4880 Allow selecting track error messages with click and drag (@cmdcolin)
    • #4882 Allow clustering multi-wiggle tracks on the fly (@cmdcolin)
    • #4874 Use a '012' matrix to improve clustering of genotypes (@cmdcolin)
  • core
    • #4871 Add deletion, insertion, skip, softclip, hardclip to theme (@cmdcolin)
  • app-core, core, product-core

🐛 Bug Fix

Committers: 2

v3.0.5 Release

· One min read

Fixes bug with trix searching that has existed since v3.0.0. Thanks to @abjanssen for reporting

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.0.5

3.0.5 (2025-03-04)

🐛 Bug Fix

Committers: 1

v3.0.4 Release

· 2 min read

New release

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.0.4

3.0.4 (2025-03-01)

🚀 Enhancement

  • Other
  • core
    • #4854 Add status callback for parsing PAF, BLAST tabular, MashMap files (@cmdcolin)

🐛 Bug Fix

  • core
    • #4862 Fix name indexing failure on jbrowse desktop (@cmdcolin)
    • #4851 Fix NCBI sequence aliases refNameAliases adapter for some sequence_report.tsv files (@cmdcolin)
  • Other
    • #4849 Fix height of Hi-C track, and add adjust-to-height (@cmdcolin)
    • #4845 Fix retrieval of VCF metadata for tooltips in VCF feature details (@cmdcolin)
    • #4842 Fix occasional 1px gap in sequence track (@cmdcolin)

🏠 Internal

Committers: 1

v3.0.3 Release

· One min read

Fixes modifications drawing bug in v3.0.2

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.0.3

Done in 0.44s.

v3.0.2 Release

· 2 min read

This release mostly has small bugfixes and minor improvements

  • Fix for some CRAM files that use "archival" bzip2 codecs
  • Change multi-variant viewer to use a blue color for the "major ALT allele" rather than just ALT===1
  • Use assembly "displayName" in view headers
  • Group transcripts from GTF files into gene level features
  • Improved ?hubURL behavior to load defaultLocation, assembly names
  • Handle random color generation for >10 categories in the multi-variant viewer

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.0.2

3.0.2 (2025-02-13)

🚀 Enhancement

  • core
    • #4834 Update ReExports for @jbrowse/core/BaseFeatureDetails (@cmdcolin)
    • #4818 Improve status updating for BamAdapter, CramAdapter (@cmdcolin)
    • #4811 Improvements to the sesson/config warning dialogs (@cmdcolin)
  • Other
    • #4829 Less gappyness at SVG features block boundaries (@cmdcolin)
    • #4828 Additional ?hubURL compat (@cmdcolin)
    • #4827 Improve status updating for BedTabixAdapter, Gff3TabixAdapter, VcfTabixAdapter, BigBedAdapter (@cmdcolin)
    • #4825 Handle multiple jobs with the same name (@garrettjstevens)
    • #4826 Calculate most frequent non-ref allele for multi-variant renderer (@cmdcolin)
    • #4824 Aggregate transcript level features in GTF based on "gene_name" field (@cmdcolin)
    • #4810 Ensure embedded users get the latest semver @gmod/vcf for multi-variant fixes (@cmdcolin)
  • app-core, core

🐛 Bug Fix

  • sv-core
    • #4837 Update @gmod/cram for fixed decoding of some CRAM files (@cmdcolin)
  • Other
    • #4808 Fix random palette color generation for multi-variant colors (@cmdcolin)

📝 Documentation

🏠 Internal

Committers: 2

2024 year in review

· 5 min read

Hello all,

I know we are well into 2025 already, but I wanted to review some of the great progress JBrowse made in 2024!

Without further ado, here are some highlights

New multi-sample VCF displays

To help render population-scale data, we created new "multi-variant" rendering modes. This includes a "matrix" rendering mode that is a dense visualization of variation patterns.

This was an exciting development that has created a flurry of feature development

One particularly interesting feature is the "phased rendering mode", which can split the phased genotypes into separate rows, which effectively shows the individual haplotypes.

The "phased rendering mode" has the unique ability to help spot patterns of inheritance in e.g. trio datasets. You can visually see where a child inherited particular variants from a particular parent

The data in the multi-variant display can be sorted according to sample metadata, which can be imported from a "samples TSV", so users can group and color the samples by e.g. the population code (here showing 1000 genomes data)

Multi-way synteny views

We created the basis for rendering multi-way synteny views. Currently, this is based on "series of pairwise" comparison rendering, which has certain drawbacks (it is not a true multi-way comparison) but it is a big stepping stone

We intend to create more improvements allowing users to load multi-way comparisons from a single data file, and easier UI workflows for setting up multi-way views in the future

Inversion SVs enhancements for breakpoint split view

We created new enhancements to the breakpoint split view to allow it to work better in a 'single row' configuration, and to color reads by pair orientation or by changes in direction in a split alignment

Screenshot showing read pairs being connected from a variety of sequencing runs from Illumina, PacBio, and Nanopore from the Genome in a Bottle dataset

Note: There were many other improvements to the breakpoint split view including, importantly, the ability to launch it from non-SV-inspector workflows. Previously, the SV inspector was the only way to really launch a breakpoint split view, but now it can be launched from just clicking the feature details of a read or VCF feature.

New "SV inspector" improvements

  • Allows opening tracks from the config.json in the SV inspector and spreadsheet
  • Uses @mui/x-data-grid for display of the spreadsheet
  • Makes separate columns for VCF INFO fields
  • Support larger files by storing data in 'volatile' storage that doesn't bog down the session
  • Support DEL, INV, and all types of SVs instead of just TRA and BND type variants in the SV inspector
  • Re-navigates existing breakpoint split view instead of launching a new one each time

Screenshot showing the new SV inspector user interface

New "Recent sessions" menu with autosaves

We saw users have trouble where they would close their tab containing JBrowse 2 and they would lose their work.

It would be difficult to restore where they were at

To help this situation, we created a new system where sessions are AUTOSAVED! Yes, autosaved! So if you accidentally close a tab or come back the next day, it is easy for you to go back and restore where you were at:

Screenshot showing the ability to access "File->Recent sessions"

  • You can also create "Favorite" sessions to revisit for later
  • Admins can also create "Pre-configured" sessions for their users

If you have any feedback about this feature let us know. I think the discoverability of this feature could use more improvement

New "Group by" functionality for alignments tracks

We released new "Group by" functionality for the alignments tracks. This functionality is somewhat unique because applying it creates multiple functionally independent subtracks.

The effect of being split into independent subtracks is actually different from e.g. the Group by feature in IGV, because in IGV, only the "read stack" is split into different rows, whereas with JBrowse, each group gets its own read stack and coverage calculation

image8

Example with splitting an alignments track by the HP tag

Apollo 3 beta release

Apollo 3, the genome annotation editor built on JBrowse 2, went into public beta at the end of 2024!

See release announcement here https://github.com/GMOD/Apollo3/releases/tag/v0.3.0

The Apollo 3 editor can run as a 'collaboration server' (shared annotation editing on a website) or as a standalone JBrowse 2 desktop plugin. It is able to take full advantage of JBrowse 2 capabilities, and users can annotate e.g. inside of a synteny view

image

Feel free to get in touch for more information on the project!

The year ahead

We look forward to hear from more users. Our office hours outreach effort has been very successful with over 100 one-on-one meetings with users! Feel free to sign up for one at https://jbrowse.org/jb2/contact :)

v3.0.1 Release

· One min read

This release fixes the vanillajs build for the linear genome view the hover genotype feature in v3.0.0

Downloads

To install JBrowse 2 for the web, you can download the link above, or you can use the JBrowse CLI to automatically download the latest version. See the JBrowse web quick start for more details.

yarn run v1.22.22 $ lerna-changelog --silent --silent --next-version 3.0.1

Done in 0.69s.