Skip to content

CMBSciPol/furax

Repository files navigation

Furax

PyPI version Python version Documentation Status CI Ruff

Docs

Furax: a Framework for Unified and Robust data Analysis with JAX.

This framework provides building blocks for solving inverse problems, in particular in the astrophysical and cosmological domains.

Requirements

  • Python >= 3.11
  • JAX — install separately for your target hardware (CPU, CUDA, Metal, …)

Installation

Furax is available as furax on PyPI, and can be installed with:

uv add furax       # uv, recommended
pip install furax  # pip, alternative

Developing Furax

We strongly recommend using uv to work on Furax.

uv sync                  # automatic editable install with `dev` dependency group
uv sync --extra <extra>  # same with additional, optional dependencies

We use pytest for testing. You can run the tests with:

uv run pytest

To ensure that your code passes the quality checks, you can use our pre-commit configuration. We recommend using prek to run the pre-commit hooks.

uvx prek install  # install pre-commit hooks; every commit will trigger them
uvx prek run      # run hooks on demand (staged files)
uvx prek run -a   # run hooks (all files)

About

Framework for Unified and Robust data Analysis with JAX

Resources

License

Stars

Watchers

Forks

Contributors

Languages