Skip to content

Project IronFlow

IronFlow is a Rust-first orchestration system with Prefect-style Python authoring (prefect_compat): you write @flow / @task flows in Python; the control plane and durable history live in the Rust engine. An optional HTTP API and web UI help you inspect runs.

Choose a path:

Goal Where to start
Install from PyPI (pip / uv), then run a demo flow Get started → Installation · Quick start (demo flow)
Self-hosted API, workers, deployments Self-hosted server
Understand flows, tasks, runners, and states Concepts overview
Do something specific (setup, server, porting) How-to guides
Supported features vs Prefect Compatibility matrix
Performance expectations Performance (vs Prefect)

Step-by-step onboarding:

  1. Install IronFlowpip install ironflow-prefect-compat / uv pip install ironflow-prefect-compat from PyPI when wheels match your platform; TestPyPI or git/source paths are secondary; clone + cargo build is the full-stack development path.
  2. Quick start (demo flow) — run a tiny @flow and see expected terminal output (no server required).
  3. Self-hosted server — optional API (ironflow_server.py), workers, deployments, and how scheduling compares to Prefect.
  4. Understand the stack — read Architecture or Concepts overview for how Python calls into the Rust kernel.
  5. Performance expectations — see Performance (vs Prefect) for what “faster” means here (control-plane throughput; not always faster end-to-end jobs).

The repository README at the repo root has the full command reference (tests, benchmarks, optional UI).

Prefect (upstream)

IronFlow echoes Prefect 3.x patterns but implements a subset with different internals. For the upstream mental model (flows, tasks, deployments in Prefect’s world), use the official docs:

Read Prefect for general orchestration ideas; read Prefect → IronFlow and Compatibility for what this repository actually implements.