Metadata-Version: 2.4
Name: graph-orchestrator
Version: 0.2.0
Summary: A lightweight graph execution engine.
Home-page: https://github.com/AbhinavS99/GraphFlow
Author: Abhinav Sharma
Author-email: abhiji99@gmail.com
License: MIT
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: matplotlib
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: coverage; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: license-file

# GraphOrchestrator

[![CI](https://github.com/AbhinavS99/GraphOrchestrator/actions/workflows/ci.yml/badge.svg)](https://github.com/AbhinavS99/GraphOrchestrator/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/AbhinavS99/GraphOrchestrator/graph/badge.svg?token=U69VNUUQ6I)](https://codecov.io/gh/AbhinavS99/GraphOrchestrator)
[![PyPI version](https://badge.fury.io/py/graph-orchestrator.svg)](https://badge.fury.io/py/graph-orchestrator)

**GraphOrchestrator** is a lightweight Python library for building and executing dynamic workflows as directed graphs. It allows you to define processing logic as **nodes**, control flow via **concrete and conditional edges**, and orchestrate execution with support for:

- ✅ **Decorator-driven design** for node actions, routing logic, and aggregators  
- 🔁 **Retry policies** and fault-tolerant execution  
- 🧠 **Conditional branching** using routing functions  
- 🤝 **Parallel and aggregated state processing**  
- 🎨 **Graph visualization** with Matplotlib  
- 🧪 **Built-in testability** with full unit test coverage  

Whether you're designing decision engines, agent workflows, or data pipelines—GraphOrchestrator offers an intuitive and extensible framework for graph-based execution.
