FLITS
Fast-Look Interactive Transient Suite.
FLITS is browser-based FRB analysis software for interactive burst
inspection, masking, measurement, DM optimization, temporal/spectral
diagnostics, and export. It reads SIGPROC filterbank (.fil),
PSRFITS search/fold data (.fits, .sf), and CHIME/FRB HDF5 (.h5, .hdf5)
including public catalog waterfalls and beamformed BBData
tiedbeam_power files. The I/O layer is pluggable — third parties can
register custom formats via importlib entry points without forking.
Every interactive decision is recorded in a JSON session snapshot, and
flits replay re-runs that snapshot headlessly to reproduce the exported
measurements without a browser.
Why FLITS exists
Turning a detected burst into a number you can defend takes several steps — tune the DM, mask interference, place the event and off-pulse windows, choose a spectral extent, then measure — and every one of them is a judgement call that moves the answer.
The tools that do these steps well do them separately. Search pipelines stop at detection; format libraries read data without offering a workflow; and the strong single-purpose tools each expect their own input conventions. So a burst campaign accumulates per-instrument glue scripts, and the decisions that produced the numbers survive only in someone's notebook.
That gets harder for repeating sources, where the same population is observed by many telescopes. FLITS was built for a repeater campaign spanning GBT at L and P band, Nançay, Westerbork, Onsala, Stockert and CHIME — three file formats, sampling times differing by more than an order of magnitude, and instruments with different bandwidths, polarization conventions and SEFDs.
FLITS makes the session, rather than the script, the unit of analysis. One interface covers every supported instrument, the reader layer absorbs the format differences, telescope presets carry the instrument-specific calibration, and the snapshot makes the analysis inspectable and replayable afterwards. Measurements state their own uncertainty basis: FLITS separates a formal 1-sigma uncertainty from a statistical-only one, and will not mark a fluence publishable when the SEFD systematic it needs was never supplied.
FLITS is not a search pipeline — it starts from a burst you already have.
Quick Start
Install the published package:
pip install flits
flits --data-dir /path/to/filterbanks --host 127.0.0.1 --port 8123
Then open http://127.0.0.1:8123.
Optional model fitting uses fitburst, which is intentionally left out of the
PyPI dependency metadata because package indexes reject direct URL runtime
dependencies. To enable model fitting after installing
FLITS:
pip install "fitburst @ https://github.com/CHIMEFRB/fitburst/archive/3c76da8f9e3ec7bc21951ce1b4a26a0255096b69.tar.gz"
Highlights
- Browser-based workflow for burst inspection on SIGPROC, PSRFITS, and CHIME/FRB HDF5 data.
- CHIME support includes public catalog waterfalls and beamformed
BBDatapower products. - Interactive crop, event, off-pulse, spectral-window, and masking controls.
- Automatic burst localization in time and frequency (matched-filter event window, spectral extent, and off-pulse placement in one click).
- Calibrated fluence and peak-flux outputs when an SEFD is available.
- DM optimization using integrated-event S/N and DMphase.
- Temporal-structure, PSD, ACF, and optional selected-event model fitting.
- Weighted Q/U RM synthesis with optional RM-CLEAN, significance and quality diagnostics, and JSON/CSV products — measured in-session from a full-Stokes burst file, or from an externally prepared Q/U spectrum.
- Export bundles and JSON session snapshots for reproducible analysis.
Documentation
- Full docs: dirkkuiper.github.io/flits
- Getting started: Quickstart
- Guided example: GBT Burst Workflow
- Installation and deployment: Installation
- Developer testing: Testing
- Developer publishing: Publishing
The docs cover Python installs, Docker, Apptainer, remote/HPC use, interactive workflow guidance, measurements, DM optimization, temporal/spectral analysis, exports, and release procedures.
Release Channels
- PyPI and
ghcr.io/dirkkuiper/flits:latesttrack stable releases. ghcr.io/dirkkuiper/flits:<version>pins an exact release.ghcr.io/dirkkuiper/flits:edgetracks the currentmainbranch for snapshot testing.
Citation
If you use FLITS in research, cite the software and link to the repository:
- PyPI package:
flits - Repository:
https://github.com/DirkKuiper/flits - Citation metadata: CITATION.cff
License
FLITS is released under the GNU GPLv3. See LICENSE.
The interface bundles plotly.js (MIT) so
it works without fetching anything from a CDN; its licence travels with the copy
in flits/web_static/vendor/.
Metadata
Release files for flits 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| flits-1.1.0.tar.gz | 3.3 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| flits-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.9 MB
Release files / flits-1.1.0.tar.gz
| Download URL | flits-1.1.0.tar.gz |
|---|---|
| Size | 3.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4473889de9da878e34b9541cf069b391769e25457ed59fa8e5c551529f5aa06c
|
|
BLAKE2b-256 checksum How to use checksums |
aae259f26d024b0900a6db367225264d955cadb3b58d12d947ecb75d7043e54e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.
Transparency logRelease files / flits-1.1.0-py3-none-any.whl
| Download URL | flits-1.1.0-py3-none-any.whl |
|---|---|
| Size | 1.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bb5f04b6d1492702337852025ade8a503cca153be46d0541971df8fd7c59c2e7
|
|
BLAKE2b-256 checksum How to use checksums |
613dba93d652cf20912ced9b97bebccb2ae90443dd79989e1bc4b85547debe43
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 25, 2026.
Transparency log