All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Project Documentation

![codecov]( ![JIRA](

![]( ![]( ![]( ![](


The ALICE O2 software repository contains the framework, as well as the detector specific, code for the reconstruction, calibration and simulation for the ALICE experiment at CERN for Run 3 and 4. It also encompasses the commonalities such as the data format, and the global algorithms like the global tracking. Other repositories in AliceO2Group contain a number of large common modules, for instance for Monitoring or Configuration.


The main entry point for O2 information is here. A quickstart page can be found under


In order to install with aliBuild you can follow this tutorial.

Issue tracking system

We use JIRA to track issues. Report a bug here.

Coding guidelines

The Coding Guidelines are here. See below how to format your code accordingly.


Documentation pages:

make doc will generate the doxygen documentation. To access the resulting documentation, open doc/html/index.html in your build directory. To install the documentation when calling make install turn on the variable DOC_INSTALL.

Doxygen documentation is also available online here

Build system (cmake) and directory structure

The code organisation is described here. The build system (cmake) is described here.


The project uses clang-format to push for a common code formatting according the the clang-format configuration files in this repository. With an adiabatic approach, all changes have to follow the formatting rules. A tool script can be used to integrate the formatting into git and suggest formatting only for changed lines.

Install clang-format

Use alienv to load clang which includes clang-format : alienv load Clang/latest If Clang is not yet build, use alibuild : aliBuild build --defaults o2 Clang If you use your own clang installation, make sure you have at least version 3.9.

Install clang-format git integration

The git-clang-format Python script integrates clang-format into git. Put it somewhere in your path and ensure that it is executable, e.g.

cd $HOME
mkdir -p bin
cd bin
chmod u+x git-clang-format

Note: installation of the script will be added to build of AliceO2 software stack.

Checking formatting

Now, git clang-format will invoke clang-format on the changes in current files or a specific commit. E.g. for the last commit

git clang-format HEAD~1

Or for all commits done with respect to the remote branch state

git clang-format origin/dev
Checking files

Show updated version of complete file :

clang-format -style=file SOURCEFILE

Directly apply the style to file :

clang-format -style=file -i SOURCEFILE

Using an IDE

A number of config files are available here for various IDEs.