Skip to main content

Modern and modular MATISSE interferometric data-reduction pipeline interface

Project description

MATISSE pipeline logo

Status Python versions License: MIT

CI codecov

Build with uv Ruff Tests: Pytest

Modern and modular MATISSE interferometric data-reduction pipeline python interface. Developed by the MATISSE Consortium. It provides a user-friendly command-line interface (matisse) as well as backward compatibility with the original consortium scripts located in legacy/.


🚀 Installation (Users)

Recommended for end-users who only need to use the pipeline.

This project uses uv to manage environments and dependencies. It’s fully compatible with pip but much faster and simpler to use.

1️⃣ Install uv

On Linux / macOS:

curl -LsSf https://astral.sh/uv/install.sh | sh

2️⃣ Create and activate a virtual environment

uv venv
source .venv/bin/activate

3️⃣ Install the package

uv pip install matisse

🧑‍💻 Developer installation

For contributors or developers working on the pipeline codebase.

1️⃣ Clone the repository

git clone https://github.com/Matisse-Consortium/matisse-pipeline.git
cd matisse-pipeline

2️⃣ Install in editable mode with dev dependencies

uv pip install -e . --group test --group typecheck

This installs:

  • pytest, ruff, and pre-commit for testing and linting
  • mypy and types-termcolor for type checking

3️⃣ Run tests

uv run pytest

4️⃣ Lint and type check

uv run ruff check src/
uv run mypy src/

🧰 Legacy Scripts Compatibility

The original MATISSE reduction tools (mat_autoPipeline.py, etc.) are preserved in the legacy/ folder for full backward compatibility. They can be accessed by adding the legacy path to your environment:

export PATH="$PATH:$(python -c 'import matisse, pathlib; print(pathlib.Path(matisse.__file__).parent / "legacy")')"

You can add this line to your ~/.zshrc or ~/.bashrc to make it persistent.

Once exported, the commands will be available globally, e.g.:

mat_autoPipeline.py --dirCalib=.

🧩 Repository Structure

matisse-pipeline/
├── src/matisse/
│   ├── cli/                  # Main CLI entry point (`matisse`)   ├── legacy/               # Legacy MATISSE reduction scripts   ├── core/                 # Core pipeline modules   └── viewer/               # Viewer interface
├── tests/                    # Unit tests
├── pyproject.toml            # Project configuration
├── CHANGELOG.md              # Project follow-up and versioning
└── README.md

🧑‍🔬 Citation / Credits

If you use this pipeline in your research, please cite the MATISSE Consortium and the corresponding instrument papers.

Maintained by the MATISSE Consortium Contributions welcome via pull requests.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

matisse-0.3.0.tar.gz (98.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

matisse-0.3.0-py3-none-any.whl (98.8 MB view details)

Uploaded Python 3

File details

Details for the file matisse-0.3.0.tar.gz.

File metadata

  • Download URL: matisse-0.3.0.tar.gz
  • Upload date:
  • Size: 98.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for matisse-0.3.0.tar.gz
Algorithm Hash digest
SHA256 9d82b0d29116af6f726352530794da9f7718af19412cbbcd2f6be0cd438ae016
MD5 a915aa12f592c94da664aeb7165d119b
BLAKE2b-256 e54cc8f036105f2d8b245ce6b9c48ffa3944382253d1031d8d75b12ee77103e2

See more details on using hashes here.

File details

Details for the file matisse-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: matisse-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 98.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for matisse-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58b65467d5b745bc5ae53b87fde79fbd53cf0e20821c2c665c8abd33b47536ec
MD5 720091ee281e017717f24cb69671ba50
BLAKE2b-256 027aa43dd4d499c3236d0da761cc1a895bb1d9c8c0a89dfbeafbae0813601ec0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page