• Download Jalview

Welcome to the Jalview JS demo page!

JalviewJS is the Jalview Desktop, running in JavaScript in your browser.

The links below open a development version of the JalviewJS Desktop with a selection of example data. To keep up with latest developments, please get in contact via the gitter chat or sign up at our issue tracker to follow issues. We aim to release a production version of JalviewJS in late 2019.

Select an example below to open:
view of JalviewJS
view of the Uniref50.fa example alignment with a features file
view of Uniref50.fa with a Newick tree file and user defined colourscheme
view of a JPred MSA Prediction
view of RF00031_folded.stk with Purine/Pyrimidine colouring
view of a PFAM Alignment (PF00001), tree, and 3D structure from a Jalview project file.


JalviewJS is still being developed, and not yet ready for production use!

If you'd like to find out more about its current status and have a github account, then message the Jalview developers directly on our JalviewJS gitter channel. You can also send an email (via any of jalview's email lists) and track progress on our JIRA bug tracker.


How it works

JalviewJS is created from Jalview's source code by a Java to JavaScript transpiler that is run automatically when Jalview is built. This has been made possible through a collaboration with Robert Hanson. Bob is the author of Jmol and creator of JmolJS (the JavaScript port of Jmol).
In 2015, a proof-of-concept was created to demonstrate that Jalview could be run in JavaScript, by applying the Eclipse Java2Script Transpiler to a modified version of Jalview's JalviewLite applet. Since then, Bob developed SwingJS - a port of the Java Virtual Machine runtime platform in JavaScript, complete with bindings for transpiled Java code that relies on Swing and AWT Graphical User Interface. Since July 2018, Bob, Mungo Carstairs, and the rest of the Jalview team have been working on adapting specific aspects of Jalview's code base. Bob has also been working to port additional Java runtime components to SwingJS, taking advantage of capabilites built in to the Browser's javascript environment such as support for JSON and XML.
JalviewJS in Action