DAG authoring
Author a DAG: leoflow.yaml plus dag.py compiled to one immutable artifact.
Everything about writing DAGs for Leoflow. A DAG is a dag.py on the Airflow Task
SDK plus a leoflow.yaml for packaging and bindings, compiled to one immutable
artifact.
New to authoring? Start with DAG authoring for the project layout and compile model, then reach for the guide that matches your task below.
dag.py + leoflow.yaml), and the compile model.
Learn the model →
Airflow compatibility
You write standard Airflow Task SDK code; Leoflow adds a thin runtime and leoflow.yaml — it never re-implements Airflow's Python API.
See the model →
Map-reduce for ML
Fan-out + reduce expressed as a Python list comprehension — native, no extra operators.
Fan out & reduce →
Operators & sensors
Use Airflow operators and sensors from your tasks.
Use operators →
Variables & Connections
Expose Variables and Connections to your task pods, delivered by the control plane.
Wire secrets in →
On-failure alerting
Notify on run failure straight from leoflow.yaml — no extra task.
Set up alerts →
The Lite web editor
Edit and run DAGs from the browser — the fastest inner loop for local dev.
Edit in the browser →
Examples
Runnable example DAGs you can copy and adapt.
Browse examples →
ETL case study
A worked 1 GB ETL on the ephemeral per-run staging volume.
Read the case study →Author a DAG: leoflow.yaml plus dag.py compiled to one immutable artifact.
How Leoflow relates to the Airflow Python API: you write standard Apache Airflow Task SDK code, and Leoflow adds a thin runtime plus a packaging file — it never re-implements Airflow’s Python surface.
Use Airflow operators and sensors from your DAGs on Leoflow.
Render a dbt project into a Leoflow DAG with native model-level tasks.
Expose Variables and Connections to your task pods.
Notify on run failure from leoflow.yaml — Slack or a generic webhook, no extra task and no Python.
Fan-out plus reduce as a Python list comprehension — native map-reduce for ML/AI.
Runnable example DAGs covering the common authoring patterns.
A worked 1 GB ETL that shares data between tasks through the per-run staging volume.
Edit and run DAGs from the browser in Leoflow Lite.