Metadata-Version: 2.3
Name: quaxed
Version: 0.5.2
Summary: Array-API JAX compatibility
Project-URL: Homepage, https://github.com/GalacticDynamics/quaxed
Project-URL: Bug Tracker, https://github.com/GalacticDynamics/quaxed/issues
Project-URL: Discussions, https://github.com/GalacticDynamics/quaxed/discussions
Project-URL: Changelog, https://github.com/GalacticDynamics/quaxed/releases
Author-email: Nathaniel Starkman <nstarman@users.noreply.github.com>
License-File: LICENSE
Classifier: Development Status :: 1 - Planning
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: jax!=0.4.30,>0.4
Requires-Dist: jaxlib!=0.4.30,>0.4
Requires-Dist: jaxtyping
Requires-Dist: plum-dispatch
Requires-Dist: quax>=0.0.3
Provides-Extra: dev
Requires-Dist: griffe<1.0; extra == 'dev'
Requires-Dist: jinja2==3.1; extra == 'dev'
Requires-Dist: mkdocs-include-exclude-files==0.0.1; extra == 'dev'
Requires-Dist: mkdocs-material==9.5; extra == 'dev'
Requires-Dist: mkdocs==1.6.0; extra == 'dev'
Requires-Dist: mkdocstrings[python]>=0.18; extra == 'dev'
Requires-Dist: mknotebooks==0.8; extra == 'dev'
Requires-Dist: nbconvert==7.16; extra == 'dev'
Requires-Dist: pygments==2.16; extra == 'dev'
Requires-Dist: pymdown-extensions==10.2; extra == 'dev'
Requires-Dist: pytest-cov>=3; extra == 'dev'
Requires-Dist: pytest-github-actions-annotate-failures; extra == 'dev'
Requires-Dist: pytest>=6; extra == 'dev'
Requires-Dist: pytkdocs-tweaks==0.0.8; extra == 'dev'
Provides-Extra: docs
Requires-Dist: griffe<1.0; extra == 'docs'
Requires-Dist: jinja2==3.1; extra == 'docs'
Requires-Dist: mkdocs-include-exclude-files==0.0.1; extra == 'docs'
Requires-Dist: mkdocs-material==9.5; extra == 'docs'
Requires-Dist: mkdocs==1.6.0; extra == 'docs'
Requires-Dist: mkdocstrings[python]>=0.18; extra == 'docs'
Requires-Dist: mknotebooks==0.8; extra == 'docs'
Requires-Dist: nbconvert==7.16; extra == 'docs'
Requires-Dist: pygments==2.16; extra == 'docs'
Requires-Dist: pymdown-extensions==10.2; extra == 'docs'
Requires-Dist: pytkdocs-tweaks==0.0.8; extra == 'docs'
Provides-Extra: test
Requires-Dist: pytest-cov>=3; extra == 'test'
Requires-Dist: pytest-github-actions-annotate-failures; extra == 'test'
Requires-Dist: pytest>=6; extra == 'test'
Description-Content-Type: text/markdown

<h1 align='center'> quaxed </h1>
<h2 align="center">Pre-<code>Quaxify</code>'ed <code>JAX</code></h2>

`Quaxed` wraps [jax](https://jax.readthedocs.io/en/latest/) libraries (using
[`quax`](https://docs.kidger.site/quax/)) to enable using those libraries with
custom array-ish objects, not only jax arrays.

## Installation

[![PyPI platforms][pypi-platforms]][pypi-link]
[![PyPI version][pypi-version]][pypi-link]

<!-- [![Conda-Forge][conda-badge]][conda-link] -->

```bash
pip install quaxed
```

## Documentation

[![Documentation Status][rtd-badge]][rtd-link]

## Quick Start

To understand how `quax` works it's magic, see
[`quax.quaxify`](https://docs.kidger.site/quax/api/quax/#quax.quaxify) and the
[tutorials](https://docs.kidger.site/quax/examples/custom_rules/).

To use this library, it's as simple as:

```pycon
# Import pre-quaxified library
>>> import quaxed.numpy as jnp  # this is quaxify(jax.numpy)

# As an example, let's import an array-ish object
>>> from unxt import Quantity
>>> x = Quantity(2, "km")
>>> jnp.square(w)
Quantity['area'](Array(4, dtype=int64, weak_type=True), unit='km2')
```

## Development

[![Actions Status][actions-badge]][actions-link]

We welcome contributions!

## Citation

[![DOI][zenodo-badge]][zenodo-link]

If you found this library to be useful and want to support the development and
maintenance of lower-level utility libraries for the scientific community,
please consider citing this work.

<!-- prettier-ignore-start -->
[actions-badge]:            https://github.com/GalacticDynamics/quaxed/workflows/CI/badge.svg
[actions-link]:             https://github.com/GalacticDynamics/quaxed/actions
[pypi-link]:                https://pypi.org/project/quaxed/
[pypi-platforms]:           https://img.shields.io/pypi/pyversions/quaxed
[pypi-version]:             https://img.shields.io/pypi/v/quaxed
[rtd-badge]:                https://readthedocs.org/projects/quaxed/badge/?version=latest
[rtd-link]:                 https://quaxed.readthedocs.io/en/latest/?badge=latest
[zenodo-badge]:             https://zenodo.org/badge/732262318.svg
[zenodo-link]:              https://zenodo.org/doi/10.5281/zenodo.10850521

<!-- prettier-ignore-end -->
