Metadata-Version: 2.4
Name: node_graph
Version: 0.2.4
Summary: Create node-based workflow
Keywords: graph,workflows
Author-email: Xing Wang <xingwang1991@gmail.com>
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Classifier: Development Status :: 1 - Planning
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Programming Language :: Python
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: Topic :: Scientific/Engineering
License-File: LICENSE
Requires-Dist: numpy
Requires-Dist: scipy
Requires-Dist: click
Requires-Dist: pyyaml
Requires-Dist: colorama
Requires-Dist: termcolor
Requires-Dist: cloudpickle
Requires-Dist: node-graph-widget
Requires-Dist: sphinx_rtd_theme ; extra == "docs"
Requires-Dist: sphinx~=7.2 ; extra == "docs"
Requires-Dist: nbsphinx ; extra == "docs"
Requires-Dist: pre-commit~=2.2 ; extra == "pre-commit"
Requires-Dist: pylint~=2.17.4 ; extra == "pre-commit"
Requires-Dist: pytest~=7.0 ; extra == "tests"
Requires-Dist: pytest-cov~=2.7,<2.11 ; extra == "tests"
Project-URL: Documentation, https://node-graph.readthedocs.io
Project-URL: Source, https://github.com/scinode/node-graph
Provides-Extra: docs
Provides-Extra: pre-commit
Provides-Extra: tests

# NodeGraph
[![PyPI version](https://badge.fury.io/py/node-graph.svg)](https://badge.fury.io/py/node-graph)
[![CI](https://github.com/scinode/node-graph/actions/workflows/ci.yaml/badge.svg)](https://github.com/scinode/node-graph/actions/workflows/ci.yaml)
[![codecov](https://codecov.io/gh/scinode/node-graph/branch/main/graph/badge.svg)](https://codecov.io/gh/scinode/node-graph)
[![Docs status](https://readthedocs.org/projects/node-graph/badge)](http://node-graph.readthedocs.io/)



A platform for designing node-based workflows.


```console
    pip install --upgrade --user node_graph
```


## Documentation
Check the [docs](https://node-graph.readthedocs.io/en/latest/) and learn about the features.

## Examples
**A simple math calculation**

```python
from node_graph import NodeGraph, node

@node()
def add(x, y):
    return x + y

ng = NodeGraph(name="example")
add1 = ng.add_node(add, x=1, y=2)
add2 = ng.add_node(add, x=3)
ng.add_link(add1.outputs.result, add2.inputs.y)
ntdata = ng.to_dict()
```

## License
[MIT](http://opensource.org/licenses/MIT)

