Metadata-Version: 2.3
Name: ioframe
Version: 0.1.1
Summary: Unified API for reading and writing Pandas DataFrames across multiple file formats and engines.
Keywords: pandas,dataframe,io,root,cern
Author: anthonyc
Author-email: anthonyc <anthony.correia@cern.ch>
License: Apache License (2.0)
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering
Requires-Dist: pandas>=2.3.1
Requires-Dist: pydantic>=2.11.7
Requires-Dist: fastparquet>=2024.11.0 ; extra == 'fastparquet'
Requires-Dist: tables>=3.10.2 ; extra == 'hdf5'
Requires-Dist: pyarrow>=21.0.0 ; extra == 'pyarrow'
Requires-Dist: awkward-pandas>=2023.8.0 ; extra == 'uproot'
Requires-Dist: uproot>=5.6.4 ; extra == 'uproot'
Requires-Dist: zstandard>=0.23.0 ; extra == 'zstd'
Requires-Python: >=3.11
Provides-Extra: fastparquet
Provides-Extra: hdf5
Provides-Extra: pyarrow
Provides-Extra: uproot
Provides-Extra: zstd
Description-Content-Type: text/markdown

<h1 align="center">IOFrame</h1>


<p align="center">
  <a href="https://gitlab.cern.ch/particlepredatorinvasion/ioframe/-/pipelines/">
    <img alt="Pipeline Status" src="https://gitlab.cern.ch/particlepredatorinvasion/ioframe/badges/master/pipeline.svg" />
  </a>
  <a href="https://gitlab.cern.ch/particlepredatorinvasion/ioframe/pipelines/latest">
    <img alt="Test Coverage" src="https://gitlab.cern.ch/particlepredatorinvasion/ioframe/badges/master/coverage.svg" />
  </a>
  <a href="https://gitlab.cern.ch/particlepredatorinvasion/ioframe/-/blob/master/LICENSE">
    <img alt="License" src="https://img.shields.io/pypi/l/ioframe" />
  </a>
  <a href="https://gitlab.cern.ch/particlepredatorinvasion/ioframe/-/releases">
    <img alt="Latest Release" src="https://gitlab.cern.ch/particlepredatorinvasion/ioframe/-/badges/release.svg" />
  </a>
  <a href="https://pypi.org/project/ioframe/">
    <img alt="PyPI - Version" src="https://img.shields.io/pypi/v/ioframe" />
  </a>
  <a href="https://pypi.org/project/ioframe/">
    <img alt="Python Version" src="https://img.shields.io/pypi/pyversions/ioframe" />
  </a>
</p>

IOFrame is a small Python package that provides a unified API
to write and read Pandas DataFrames through
various file formats (CSV, Parquet, Feather, etc.), and different engines
(Pandas, PyArrow, FastParquet, etc.).

The library also provides an experimental API to measure performance metrics
on these operations (read time, write time, space usage).

| Link                                                                                           | Description                                                                  |
|:-----------------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------|
| 📖 **[Full Documentation](https://ioframe.docs.cern.ch)**                                      | The complete guide to installation, configuration, and concepts.             |
| 🚀 **[User Guide](https://ioframe.docs.cern.ch/master/user/guide.html)**                       | The fastest way to get a working example running.                            |
| 💡 **[Contributing Guide](https://ioframe.docs.cern.ch/master/development/contributing.html)** | Learn how to set up a development environment and contribute to the project. |
| 🐛 **[Report a Bug](https://gitlab.cern.ch/particlepredatorinvasion/ioframe/-/issues)**        | Found an issue? Let us know by creating a bug report.                        |
| 📜 **[Changelog](https://gitlab.cern.ch/particlepredatorinvasion/ioframe/-/releases)**         | See the latest changes from the release page   
