C303: Firefly: Using VO Protocols to Build Dynamic UIs

Tuesday plenary 1: contributed talk

When

9:30 – 9:45 a.m., Nov. 7, 2023

Where

Theme: User Experience for astronomical software

pretalx

The open-source Firefly toolkit for astronomical data exploration, display, and analysis has extensive web-based visualization capabilities. Firefly provides highly interactive, linked visualizations for image and catalog data, supporting FITS and HiPS images, tables, and scientific charts. These components include many UI features that assist archive users to better understand their data.

Firefly has been used to construct archive interfaces for many missions, each with its own unique display requirements to help scientists get the most out of their data. Supporting these has been difficult and often requires specialized code for each mission despite superficial similarities in the requirements. This takes development effort away from creating new common, reusable capabilities, and it has also made it difficult to deliver new features back to the interfaces for legacy missions.

We have embarked on a long-term effort toward building UIs in which mission-specific features are produced by common code reacting to mission-specific metadata by the data services. This has been facilitated by a simultaneous increasing use of IVOA standards and services internally to connect the Firefly applications to the back-end mission data. These efforts have begun to bear substantial fruit.

Using IVOA standards to describe the data, we are able to build query interfaces and display search results in ways that make the most sense for that particular data set. Firefly uses the TAP, ObsCore, UWS, VOTable, and DataLink standards extensively to support this. We’ve found DataLink’s “service descriptors” particularly useful in enabling the creation of metadata-driven UIs. Unfortunately, these standards don’t always go far enough to describe a UI to the level of detail that we need. Consequently, we have worked together with our back-end team partners, at IPAC and in the Rubin Observatory, to find ways to extend the standards in a backwardly compatible way.

This talk demonstrates these new capabilities and how we are using VO protocols and Firefly’s extensive data visualization capabilities to create dynamic UIs and search results displays. It will exemplify the powerful experiences that will be available to users of the IPAC and Rubin archives.

IPAC Firefly was created in IRSA, the NASA/IPAC Infrared Science Archive (http://irsa.ipac.caltech.edu) and its development is extensively supported by NASA and by the NSF, through the Vera C. Rubin Observatory. Firefly is the core of applications serving many project archives including Spitzer, WISE, ZTF, SOFIA and others. It is also used in IRSA’s general Finder Chart and IRSA Viewer applications. Firefly underpins the Portal Aspect of the Rubin Science Platform as well as being used, via its Python API, for visualizations in notebooks. The NED and NASA Exoplanet Archive use the Firefly JavaScript API inside their web applications.

GitHub: https://github.com/Caltech-IPAC/firefly

Contacts

Trey Roby, IRSA