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 git+https://github.com/Matisse-Consortium/matisse-pipeline.git

🧑‍💻 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.py                # Main CLI entry point (`mat`)   ├── legacy/               # Legacy MATISSE reduction scripts   ├── core/                 # Core pipeline modules   └── viewer/               # Viewer interface
├── tests/                    # Unit tests
├── pyproject.toml            # Project configuration (dependencies, groups, etc.)
└── 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.1.0.tar.gz (98.4 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.1.0-py3-none-any.whl (98.8 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for matisse-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0595e035113c3fbb3c21aaeca25f7c2920888da26093877ee910ae64918ead3e
MD5 2436ba5bc6d47a8f6a081d92a372e8dd
BLAKE2b-256 dd8498a1f76c1f44bf91088e36e8211c198dbf83a49974a2ee74eb16373b94ca

See more details on using hashes here.

File details

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

File metadata

  • Download URL: matisse-0.1.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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 212e69a326cda1cf491ade6d83facd0635f10a636382e7350804b0350162a323
MD5 8b5d829ad89b966a440bb80e7d1c4357
BLAKE2b-256 7233c4100dd74e7de807e1a14382219d60444825d8cb828ffa1be042fa614441

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