Firefly

A WebGL tool to explore particle‑based data

Documentation GitHub
Demo runs live from the latest build.
Hint: zoom way out to see the dark matter distribution in the pink points.
The Firefly viewer showing the low-res FIRE galaxy simulation
Live viewer
ageller.github.io/Firefly
Click to run →
Live demo · latest build
What is Firefly?
Built with

Firefly is a web application that allows users to interactively explore their 3D particle data. At its core, it is a Javascript app that uses WebGL to efficiently render millions of particles in an interactive three.js scene.

In addition to traditional static html and css, the user interface is procedurally generated using d3.js according to a configuration file, allowing visualization creators to ship different versions of their visualization for different audiences without changing the underlying code or data.

On top of this framework, we provide a python frontend that allows users to generate their own Firefly visualizations and host virtual webservers using Flask, enabling users to control their visualization via a remote device (i.e. an iPad), livestream the output of their visualization from a remote server (like a supercomputing cluster), or load new data directly from a Python interpreter without having to read it in from disk.