Metadata-Version: 2.4
Name: p40_flowbase
Version: 0.7.0
Summary: Data pipeline framework
Author: Anton Tarasenko
License-Expression: MIT
Project-URL: Homepage, https://github.com/antontarasenko/p40_flowbase
Project-URL: Repository, https://github.com/antontarasenko/p40_flowbase
Project-URL: Example, https://github.com/antontarasenko/p40_flowbase/tree/main/examples/p40_weather
Project-URL: Changelog, https://github.com/antontarasenko/p40_flowbase/blob/main/CHANGELOG.md
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3.13
Classifier: Typing :: Typed
Requires-Python: >=3.13
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiohttp~=3.13.2
Requires-Dist: aiolimiter~=1.2.1
Requires-Dist: aiosqlite~=0.21.0
Requires-Dist: dagster~=1.13.1
Requires-Dist: duckdb~=1.5.2
Requires-Dist: jinja2~=3.1.6
Requires-Dist: joblib~=1.5.2
Requires-Dist: matplotlib~=3.10.5
Requires-Dist: pyarrow~=22.0.0
Requires-Dist: pydantic~=2.12.4
Requires-Dist: pydantic-settings~=2.10.1
Requires-Dist: scikit-learn~=1.7.2
Requires-Dist: sqlalchemy[asyncio]~=2.0.45
Requires-Dist: sqlmodel~=0.0.31
Provides-Extra: claude-agent-sdk
Requires-Dist: claude-agent-sdk>=0.1.77; extra == "claude-agent-sdk"
Provides-Extra: openai-agents
Requires-Dist: openai-agents>=0.17.0; extra == "openai-agents"
Provides-Extra: langgraph
Requires-Dist: langgraph>=1.1.10; extra == "langgraph"
Provides-Extra: all
Requires-Dist: p40_flowbase[claude-agent-sdk,langgraph,openai-agents]; extra == "all"
Dynamic: license-file

# p40_flowbase

[![PyPI](https://img.shields.io/pypi/v/p40-flowbase)](https://pypi.org/project/p40-flowbase/)
[![Python](https://img.shields.io/pypi/pyversions/p40-flowbase)](https://pypi.org/project/p40-flowbase/)
[![License: MIT](https://img.shields.io/pypi/l/p40-flowbase)](LICENSE)

A single-dependency data pipeline framework. You model each step of a pipeline as a `DataObject` subclass with one uniform lifecycle (`make` / `convert` / `delete`), a typed schema, declarative post-make checks. Any object becomes a partitioned, dependency-aware Dagster asset with a single decorator.

## Install

```sh
pip install p40_flowbase
```

## Documentation

- [`examples/p40_weather/`](examples/p40_weather/)
- [`CHANGELOG.md`](CHANGELOG.md)
- [`CONTRIBUTING.md`](CONTRIBUTING.md)

## License

→ [`LICENSE`](LICENSE)
