Features


Authoring

Build multi-step processes interactively by creating nodes and defining the dependencies between them.

Node-based framework

Wrap your Python processing tasks in nodes and break down complex processing logic into more adaptable, maintainable, and upgradeable components.

Drag & drop interface

Design processes interactively with iograft's intuitive visual interface. Even non-technical users can quickly build new workflows with existing nodes.

Subgraphs

Embed graphs into other graphs via the "subgraph node" for easy sharing, re-use, and abstraction.

Data & non-data dependencies

Represent the dependencies between nodes by either defining the data to be passed between them or by making an "execution order" dependency.

Groups & notes

Organize and annotate your workflows by grouping nodes and by adding documentation directly to the canvas with notes.

Custom data types

iograft uses a plugin-based type system allowing users to define and pass custom data types between nodes.

Loop nodes

Execute a nested subgraph for an input number of iterations or iterate over a list of input data.


Processing & Debugging

Execute and monitor processing graphs. Efficiently identify and debug issues as they arise.

Processing Engine

Focus on writing nodes and defining the dependencies between them rather than the low-level details of how they are processed or how data is passed between them.

Real-time feedback

Visualize the progress of your data processing pipeline in real-time. Access error messages and node statuses directly from the UI.

Inspect output data

View the data being produced by your graph as it is processing to quickly and efficiently diagnose and resolve issues.

Monitor remote processes

Connect to and monitor iograft processes running on remote hosts all through a UI running on your local machine.

Headless Execution

Once built, processing graphs can be executed in "batch" or within other scripts and tools without needing to be connected to the UI.

Error Log

Each node has access to its own message and traceback log to easily identify the source of errors and debug efficiently.


Integration

Access the power of iograft within your existing tools and workflows.

View Integration Docs

Python API

iograft’s core can be run from within any Python environment allowing its capabilities to be used from any Python-enabled application.

In-app processing

Use iograft as the backbone for building tools and automating workflows within any application that supports Python.

Cross-application processing

Build and execute graphs with nodes that span multiple applications. Simply specify the environment that nodes should run in and iograft handles all of the inter-application communication and data passing.