Community
Cedalion is an open-source project developed from the community for the community. It was initiated at the IBS Lab at TU Berlin with the goal of building a transparent, reproducible, and extensible fNIRS/DOT analysis platform that the whole community can rely on, contribute to, and improve over time.
Philosophy
Our community philosophy rests on three pillars:
Open development. All code, issues, and discussions are public. Every contribution is welcome — from fixing a typo to implementing a new analysis method.
Attribution. Code contributions are credited in function docstrings and in the Contributors section below. Methods implemented from scientific publications are linked to their source paper via a searchable bibliography, giving the original authors the visibility they deserve.
Interoperability. Cedalion adopts open data standards (SNIRF, BIDS) and interfaces with widely-used toolboxes across the community rather than reinventing the wheel. See Toolboxes & Integrations below for the full picture.
More detail on the design goals and community approach can be found in the accompanying paper: Middell et al. [MCM+26].
Toolboxes & Integrations
Cedalion’s name is based on a Greek myth: Cedalion stood on the shoulders of the giant Orion to guide him east, where the rays of Helios restored his sight. This toolbox stands on the shoulders of many giants, and we aim to complement existing toolboxes in the community by interfacing with them wherever possible.
Origins
A substantial part of Cedalion’s fNIRS & DOT signal processing and head modelling functionality traces its roots to the MATLAB toolboxes Homer2/3 and AtlasViewer from the Boston University Neurophotonics Center (Huppert et al. [HDFB09]). Methods from these toolboxes have been translated into Python and integrated into the Cedalion ecosystem with full citation linkage.
Active Integrations
Toolbox |
Purpose in Cedalion |
Relationship |
|---|---|---|
Origin of signal processing and head modelling methods |
Predecessor / method source |
|
Origin of atlas-based DOT pipeline methods |
Predecessor / method source |
|
GPU-accelerated Monte Carlo photon simulation |
Optional dependency ( |
|
FEM-based photon simulation |
Plugin ( |
|
SNIRF I/O compatibility; geometry utilities |
Soft dependency |
Planned Integrations
NeuroKit2: physiological signal processing (cardiac, respiratory, EDA) to complement fNIRS in multimodal recordings.
Contributors
Cedalion is driven by the IBS Lab with the aim of
encouraging continuous use, contribution, and improvement from the entire
community. Every code contribution is credited here and in the relevant function
docstrings. The contributor list below is generated automatically from the
GitHub repository and can be refreshed by
running python scripts/generate_contributors.py.
Core Maintainers
Code Contributors
Scientific Credit
This toolbox’s documentation includes a dedicated bibliography where you can browse the scientific papers whose methods are implemented in Cedalion. The reference keys follow the BibTeX alpha bibliography style and can also be used to search the documentation for methods built on a given paper.
If you contribute code based on a published method, please:
Add the BibTeX entry to
cedalion/bibliography/references.bib.Cite it in the function’s docstring using
:cite:`BibTexKey`.Call
cedalion.cite()within the function itself.
This ensures the original authors receive the visibility they deserve.
Cedalion tracks every work cited via cedalion.cite() across the methods used in your
processing pipeline, allowing you to export the complete reference list for your analysis.
For example, calling cedalion.bib.dump_to_notebook() inside a Jupyter notebook produces:

Special Mentions
Special thanks to members of the Bio Optical & Acoustic Spectroscopy (BOAS) Lab at Boston University’s Neurophotonics Center: Laura Carlton, Sung Min Ahn, Meryem Yücel, and David Boas.
Thanks to Jiaming Cao from the University of Birmingham for supporting the adoption of NIRFASTer into Cedalion.
Get Involved
Forum
The primary place for questions, discussion, and community support is the Cedalion Forum on openfnirs.org. This is the best channel for usage questions, sharing results, and general fNIRS/DOT discussion.
GitHub Issues
For bug reports and feature requests, use GitHub Issues. Please search existing issues before opening a new one. For usage questions, the forum is more appropriate than issues.
Contributing Code
Contributions of all kinds are welcome — bug fixes, new analysis methods, documentation improvements, and example notebooks. A step-by-step guide to setting up a development environment and submitting a pull request is available here: