The next generation of spatial and layerController views in Vitessce is ready for testing. There are several motivations for re-implementing these views:
Internal code refactoring
Vitessce has a relatively large and complex code base for a JavaScript project. Like many other JavaScript projects, we not only develop a library for distribution on NPM but also an internal development web application and a documentation website. This alone presents many challenges for JavaScript build tools: namely hot module reloading in development plus a single-file bundle for NPM. Often additionally, we want to produce a matrix of different builds: minified/unminified, development/production, esm/umd/commonjs. If we have any custom CSS that goes along with our JavaScript, we also need to think about how that will get included in the bundle.
However, in Vitessce, many other things complicate both the development and production setups.
Observation-by-feature support has arrived
Since the start of the Vitessce project in late 2018, our team has been focused on addressing the challenges of interactive web-based visualization of multi-modal and spatial single-cell datasets.