Phoenix
Phoenix is a TypeScript-based event display framework, using the popular three.js library for 3D. It focuses on being experiment agnostic by design, with common tools (such as custom menus, controls, propagators) and the possibility to add experiment specific extensions.
It consists of two packages: a plain TypeScript core library (phoenix-event-display) and Angular example application (phoenix-ng). A React example is also provided. The core library can be adapted for any experiment with some simple steps.
Phoenix is supported by the HEP Software Foundation and is the official web event display of the ATLAS experiment.
It was selected for Google Summer of Code support in 2019, 2020 and 2021.
You can see the stable version at https://hepsoftwarefoundation.org/phoenix and the development version at http://phoenix-dev.surge.sh.
Demo
Packages
phoenix-event-display
Phoenix event display frameworkphoenix-ng
Phoenix Angular application
Development
For running both the event display and the Angular app, you will need Node.js and Yarn.
Once you have Node.js and npm (npm comes with Node.js), install Yarn.
npm install --global yarn
You might need to set your Yarn version to Yarn 2 and beyond with
yarn set version berry
Then run the following commands.
# Install all the required dependencies
yarn install
# For macOS Ventura you may need to specify C++ version, e.g. yarn install -std=c++17
# Run phoenix-event-display and phoenix-app in development/watch mode
yarn start
Now both the phoenix-event-display
and phoenix-app
will start in development/watch mode. Any changes made to the phoenix-event-display
will rebuild and hot reload the phoenix-app
. You can access the app by navigating to http://localhost:4200
on the browser.
Docker
Run the following Docker command to start Phoenix locally using Docker.
docker run -dp 80:80 9inpachi/phoenix
Access the app by navigating to http://localhost
on the browser.
Documentation
Phoenix presentations
Phoenix was presented at the HSF/WLCG virtual workshop and the presentation can be watched on YouTube
Examples of Phoenix in use
ATLAS
PhoenixATLAS is the official web event display of the ATLAS experiment. It can be used to visualise different versions of ATLAS Geometry, and uploaded events.
ATLAS has also used it for embedded events in Physics briefings, e.g. Heavyweight champions: a search for new heavy W' bosons with the ATLAS detector
FCC
Phoenix is also used by Future Circular Collider, see here.
LHCb
Phoenix is also used by LHCb, see here
Contact
The best way to contact us is to either open an issue in GitHub, start a discussion or talk to us on our gitter channel (though this is not used as much these days).