Metadata-Version: 2.4
Name: kodiks-ai-lib
Version: 1.1.8
Summary: Simple and flexible ML workflow engine and Utilities
License: Apache-2.0
License-File: LICENSE
Keywords: machine learning,pipeline,rabbitmq
Author: Ramazan Güven
Author-email: ramazanguveen@gmail.com
Requires-Python: >=3.9,<4.0
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: 3.15
Classifier: Topic :: Software Development
Requires-Dist: loguru (>=0.7.2,<0.8.0)
Requires-Dist: minio (>=7.2.9,<8.0.0)
Requires-Dist: pika (>=1.3.0,<2.0.0)
Requires-Dist: requests (>=2.31.0,<3.0.0)
Project-URL: Homepage, https://github.com/kodiks/kodiks-ai-lib
Project-URL: Repository, https://github.com/kodiks/kodiks-ai-lib
Description-Content-Type: text/markdown

# Kodiks Ai Lib

## Overview

This is a helper library for Kodiks Ai Core workflow product. The idea of this library is to wrap all reusable code to simplify and improve workflow implementation.

Supported functionality:

- API to communicate with RabbitMQ for event receiver/producer
- Workflow call helper
- Logger call helper


## Instructions

Version number should be updated in __init__.py and pyproject.toml

1. Install Poetry

```
pip install poetry
```

2. Add pika and requests libraries

```
poetry add pika
poetry add requests
```

3. Build

```
poetry build
```

4. Publish to PyPI (production — this is what CI and deployments install from)

```
poetry config pypi-token.pypi pypi-<YOUR_TOKEN>
poetry publish
```

5. Install from PyPI

```
pip install kodiks-ai-lib
```

6. Publish to TestPyPI (optional — to try a release out first)

Note: TestPyPI is a sandbox with no SLA that garbage-collects packages, so
never point a CI build or a deployment at it.

```
poetry config repositories.test-pypi https://test.pypi.org/legacy/
poetry config pypi-token.test-pypi pypi-<YOUR_TOKEN>
poetry publish -r test-pypi
```

7. Install from TestPyPI

```
pip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple  kodiks-ai-lib
```

8. Test imported library from CMD

```
python -m kodiks_ai_lib
```

9. Import EventReceiver

```
from kodiks_ai_lib.events.event_receiver import EventReceiver
```

10. Import EventProducer

```
from kodiks_ai_lib.events.event_producer import EventProducer
```

## Structure

```
.
├── LICENSE
├── poetry.lock
├── pyproject.toml
├── kodiks_ai_lib
│   ├── __init__.py
│   ├── __main__.py
│   ├── events
│       ├── __init__.py
│       ├── exchange_producer.py
│       ├── exchange_receiver.py
│       ├── event_producer.py
│       └── event_receiver.py
│   ├── logger
│       ├── __init__.py
│       └── logger_helper.py
│   ├── workflow
│       ├── __init__.py
│       └── workflow_helper.py
└── README.md
```

## License

Licensed under the Apache License, Version 2.0. Copyright 2024-2025 Kodiks AI, [Copy of the license](https://github.com/kodiks/kodiks-ai-lib/blob/master/LICENSE).
