Metadata-Version: 2.3
Name: sibi-flux
Version: 2026.1.13
Summary: Sibi Toolkit: A collection of tools for Data Analysis/Engineering.
Author: Luis Valverde
Author-email: Luis Valverde <lvalverdeb@gmail.com>
Requires-Dist: pandas>=2.3.3
Requires-Dist: pyarrow>=22.0.0
Requires-Dist: pydantic>=2.12.5
Requires-Dist: pydantic-settings>=2.12.0
Requires-Dist: dask>=2025.11.0
Requires-Dist: fsspec>=2025.10.0
Requires-Dist: s3fs>=2025.10.0
Requires-Dist: sqlalchemy>=2.0.44
Requires-Dist: psycopg2>=2.9.11
Requires-Dist: pymysql>=1.1.2
Requires-Dist: clickhouse-connect>=0.10.0
Requires-Dist: concurrent-log-handler>=0.9.28
Requires-Dist: rich>=14.2.0
Requires-Dist: filelock>=3.20.1
Requires-Dist: tqdm>=4.67.1
Requires-Dist: watchdog>=6.0.0
Requires-Dist: tornado==6.5.4
Requires-Dist: typer>=0.21.0
Requires-Dist: psutil>=6.1.1
Requires-Dist: httpx>=0.28.1
Requires-Dist: opentelemetry-api>=1.38.0
Requires-Dist: opentelemetry-exporter-otlp>=1.38.0
Requires-Dist: opentelemetry-sdk>=1.38.0
Requires-Dist: deep-translator>=1.11.4
Requires-Dist: pyyaml>=6.0.3
Requires-Dist: distributed>=2025.11.0
Requires-Dist: sibi-flux[distributed,geospatial,mcp] ; extra == 'complete'
Requires-Dist: osmnx>=2.0.7 ; extra == 'geospatial'
Requires-Dist: geopandas>=1.1.2 ; extra == 'geospatial'
Requires-Dist: geopy>=2.4.1 ; extra == 'geospatial'
Requires-Dist: folium>=0.20.0 ; extra == 'geospatial'
Requires-Dist: osmium>=4.2.0 ; extra == 'geospatial'
Requires-Dist: shapely>=2.0.0 ; extra == 'geospatial'
Requires-Dist: networkx>=3.6.1 ; extra == 'geospatial'
Requires-Dist: mcp>=1.1.2 ; extra == 'mcp'
Requires-Dist: fastapi>=0.127.0 ; extra == 'mcp'
Requires-Dist: uvicorn>=0.40.0 ; extra == 'mcp'
Requires-Dist: httpx>=0.28.1 ; extra == 'mcp'
Requires-Python: >=3.11
Provides-Extra: complete
Provides-Extra: geospatial
Provides-Extra: mcp
Description-Content-Type: text/markdown

# SibiFlux

Production-grade data engineering toolkit with Datacubes, hybrid data loading, and optional MCP integration for agent workflows.

## Overview

SibiFlux provides a unified workflow to initialize projects, generate and manage Datacubes, and orchestrate data artifacts across local and distributed environments. The core package lives in `src/sibi_flux` and ships with a CLI exposed as `sibi-flux`.

## Key Capabilities

- Datacube discovery, generation, and extension via the `dc` CLI.
- Hybrid data loading with dataset and DataFrame utilities.
- Artifact orchestration and storage registry support.
- Optional MCP integration for agent interfaces.
- Optional geospatial helpers (OSMnx and related tooling).
- Dask and distributed utilities for scalable workloads.

## Installation

Python 3.11+ is required. Install from source in your preferred environment manager:

```bash
pip install -e .
```

Optional extras:

- `mcp` for agent interfaces.
- `geospatial` for OSMnx and GIS helpers.
- `complete` for all optional extras.

Example:

```bash
pip install -e ".[mcp]"
```

## Quick Start (CLI)

A typical project setup flow uses the CLI commands below.

```bash
sibi-flux init my-project --app
sibi-flux env --env-file .env
cd my-project
sibi-flux create-app my-app
sibi-flux dc workflow --force
sibi-flux propose-cubes <db_domain> my-app
sibi-flux create-cubes my-app
```

## CLI Overview

The CLI entry point is `sibi-flux`.

- `init` initializes a new project (library or app template).
- `env` generates settings, credentials, and **Storage Registry** from `.env`.
- `create-app` scaffolds an application within a project.
- `propose-cubes` proposes Datacubes from a database domain.
- `create-cubes` generates app-specific Datacube extensions.
- `dc ...` provides Datacube discovery, mapping, and workflow commands.

## Documentation

Project docs live under `src/docs`:

- `src/docs/index.md` entry index.
- `src/docs/guides/cli_workflows.md` for command usage.
- `src/docs/guides/configuration.md` for `.env` and settings.
- `src/docs/guides/hybrid_data_loader.md` for dataset loading.
- `src/docs/guides/mcp/01_architecture_overview.md` for MCP integration.
- `src/docs/api_reference/` for module-level APIs.

## Package Layout

- `src/sibi_flux`: Core package and CLI.
- `src/sibi_dst`: Secondary package.
- `src/docs`: Documentation and guides.
- `solutions/`: Example implementations and generators.
- `tests/`: Test suite and snapshots.

## Development

Common tasks are defined in `pyproject.toml` under `[tool.poe.tasks]`.

```bash
pytest tests/
```

## License

Add your license information here.
