Metadata-Version: 2.4
Name: ms_flow
Version: 0.1.0
Summary: In-process, desktop-first, domain-agnostic job/task/executor orchestrator for massive data flows.
Author: Mario S. Valdés-Tresanco, Mario E. Valdés-Tresanco, Ernesto Moreno, Pedro A. Valiente
License-Expression: MIT
Project-URL: Homepage, https://github.com/MolSuite/ms_flow
Project-URL: Documentation, https://github.com/MolSuite/ms_flow/tree/main/docs
Project-URL: Issues, https://github.com/MolSuite/ms_flow/issues
Keywords: orchestration,executor,jobs,pipeline,scientific-computing
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: blinker>=1.6
Requires-Dist: loky>=3.0
Requires-Dist: pydantic>=2.0
Requires-Dist: sqlalchemy>=2.0
Requires-Dist: sqlmodel>=0.0.14
Requires-Dist: toml>=0.10
Requires-Dist: tqdm>=4.66
Provides-Extra: ray
Requires-Dist: ray>=2.6; extra == "ray"
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Dynamic: license-file

# ms_flow

In-process, desktop-first, domain-agnostic orchestrator for massive data flows:
jobs, executors and persistence in the same process as your app — no broker, no
daemon, no server. Works from a Qt app, a notebook or a plain script.

```python
from ms_flow.api import MolSuite, table_sink
from workers import double_value  # el handler vive en un modulo importable

ms = MolSuite(app_id="demo")
ms.create_or_open_project(name="demo", folder="./demo_project", activate=True)

job_id = ms.run(
    name="double_values",
    input=[{"value": v} for v in range(1000)],
    process=double_value,
    output=table_sink("results", columns=("value", "double_value")),
    executor="thread",
)
print(ms.wait_for_job(job_id).status)
```

## Install

```bash
pip install ms_flow            # core: control plane + SQLite + loky
pip install "ms_flow[ray]"     # Ray executor
```

## Where to look

- [5-minute quickstart](docs/guides/quickstart_5min.md) — first working job.
- [Runnable examples](examples/README.md) — scripts y notebook.
- [Public API](docs/guides/public_api.md) — API.
- [Docs index](docs/README.md) — guides, contracts, operation
- [Benchmarks](benchmarks/README.md) — performance.

## Status

Beta. The public API (`ms_flow.api`) is the stable surface; `ms_flow.core.*` may change without notice.

## License

MIT — see [LICENSE](LICENSE).
