Metadata-Version: 2.1
Name: pibrary
Version: 0.2.0a5
Summary: A package of reusable code for ML projects.
License: MIT
Author: Prakash Chaudhary
Author-email: connectwithprakash@gmail.com
Requires-Python: >=3.10
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: autoapi (>=2.0.1,<3.0.0)
Requires-Dist: joblib (>=1.2.0,<2.0.0)
Requires-Dist: loguru (>=0.7.0,<0.8.0)
Requires-Dist: pandas (>=2.2.2,<3.0.0)
Requires-Dist: sphinx-autoapi (>=3.2.1,<4.0.0)
Requires-Dist: urllib3 (>=2.2.2,<3.0.0)
Requires-Dist: wandb (>=0.16.3,<0.17.0)
Description-Content-Type: text/markdown

# Pibrary

<p align="center">
    <em>Pibrary framework: A package of reusable code for ML projects</em>
</p>
<p align="center">
    <a href="https://github.com/connectwithprakash/pibrary/actions?query=workflow%3ATest+event%3Apush+branch%3Amain" target="_blank">
        <img src="https://github.com/connectwithprakash/pibrary/workflows/Test/badge.svg?event=push&branch=main" alt="Test">
    </a>
    <a href='https://pibrary.readthedocs.io/en/latest/?badge=latest'>
        <img src='https://readthedocs.org/projects/pibrary/badge/?version=latest' alt='Documentation Status' />
    </a>
    <a href="https://pypi.org/project/pibrary" target="_blank">
        <img src="https://img.shields.io/pypi/v/pibrary?color=%2334D058&label=pypi%20package" alt="Package version">
    </a>
    <a href="https://pypi.org/project/pibrary" target="_blank">
        <img src="https://img.shields.io/pypi/pyversions/pibrary.svg?color=%2334D058" alt="Supported Python versions">
    </a>
    <a href="https://opensource.org/licenses/MIT" target="_blank">
        <img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT">
    </a>
</p>

## Installation

```bash
pip install pibrary
```

## Usage
```python
from pibrary.file import File
from pibrary.logger import timeit
from pibrary.string import String

# File Class
dataframe = File(file_path).read().csv()
File(file_path).write(dataframe).csv()

json_data = File(file_path).read().json()
File(file_path).write(json_data).csv()

pickle_data = File(file_path).read().pickle()
File(file_path).write(pickle_data).csv()

# Logger
@timeit
def some_function(...):
    ...

# String Class
new_text = String(text).lower().remove_digits().remove_punctuation().strip()
```

## Documentation

The full documentation of Pibrary is available at https://pibrary.readthedocs.io/en/latest/.

## Contributing
Contributions are welcome! Please read [CONTRIBUTING](CONTRIBUTING) for details on how to contribute to this project.


# License
This project is licensed under the terms of the [MIT license](LICENSE).

