BioJS - free bioinformatics visualisation tools get a software facelift

Posted by s.hettrick on 2 April 2015 - 10:40am

By Devasena Inupakutika, Software Consultant.

With the advent of data-driven research in the life sciences, researchers have relied on data visualisations to generate hypotheses. Many bioinformatics services providers, such as EMBL-EBI or the NCBI, provide a browser-based environment to do this, as well as new ways to visualise biological data. It is important that the software is both high quality and user friendly, which helps researchers compare and contrast, as well as develop, well grounded conclusions. The Software Sustainability Institute worked with BioJS to review their code, help with coding standards - ultimately making it easier to develop with BioJS.

BioJS, a multi-partner effort coordinated by TGAC, provides services such as infrastructure, guidelines and tools, to represent biological data on the Web that can be reused by anyone. It is an open-source, community-based project, with a modular, structured design that is ideal for data-intensive research. It allows users to build reusable, interactive applications which can be easily deployed on the web.

Components are the basic elements in the BioJS library, and are mainly written in JavaScript for the visualisation of biological data that can be easily used, shared and extended. They also allow developers to improve the user experience when browsing the community data held at various bioinformatics data provider institutions, such as EMBL-EBI.

However, developers of BioJS 0.1 have been limited to bioinformaticians within EBI due to its lack of a suitable development framework that can be easily picked up. Other developers within the wider field of bioinformatics build their own tools instead of using BioJS, as its components were difficult to integrate or use within their own applications. Another problem facing the platform was that its development tools, based on Maven and JSDoc2, were outdated, and this was naturally not helped by the departure of one of the original developers.

In response to this, BioJS 2.0 was developed in 2014 as part of a Google Summer of Code project. As a result of this redevelopment, the user-base is now expected to grow. Nonetheless, the platform still lacked a proper user support framework and a proper starting point for new developers. Code quality was also inconsistent across the suite of components, as was its documentation. Developers external to BioJS often had to rely on Travis to monitor tests for signs of failure.

With the Institute helping to resolve these challenges, BioJS has become easier to develop and it is now easier to make use of BioJS components. As part of this work, the Institute conducted a review of the BioJS component library. In particular, the registry was reviewed for maintainability and code quality, and the Institute assisted in the development of new guidelines to develop new BioJS components. The Institute also contributed improvements to their Gold Standards for publishing components, and also provided guidelines for authoring technical documentation.

To assist with the software’s promotion, the Institute also reviewed its user community resources, such as the website, dissemination and other materials. The Institute has also proposed improvements to the BioJS project’s organisational structure and governance policy to make the process easier for new developers to join the endeavour. These changes will also help to ensure that the existing developer community is well served, supported and acknowledged.