Embed the Library
Run orchestration inside your application. You add a dependency — cloacina
(Rust) or cloaca (Python) — and the engine runs in your process, backed by a
database you already operate. No separate service to stand up.
This is a first-class, production-legitimate way to run Cloacina. If instead you want to operate Cloacina as a shared, multi-tenant service, see Run the Service. For what the two share — the core objects you author against — see Engine & Primitives.
Who this is for: application developers embedding the engine as a library inside their own Rust or Python code.
Prerequisites: an existing Rust or Python project to add the dependency to, and a database you already operate (SQLite is fine to start).
- Quick Start
-
Tutorials
- 01 — Your First Workflow
- 02 — Passing data with Context
- 03 — Dependencies & parallelism
- 04 — Error handling & retries
- 05 — Cron Scheduling
- 06 — Multi-Tenancy
- 07 — Event Triggers
- 08 — Task Deferral
- 09 — Working with the Workflow Registry
- 10 — Your First Computation Graph
- 11 — Accumulators
- 12 — Full Multi-Source Pipeline
- 13 — Routing and Enum Dispatch
- 14 — Packaged Triggers
-
How-to Guides
- Testing Workflows
- Running embedded in production
- Subscribe a workflow to a reactor
- Declare and validate workflow inputs
- Invoke a computation graph from a workflow task
- Configure a Database Connection URL
- Conditional Retries
- Observe Execution State
- Performance Optimization
- Packaging Python Workflows
- Running the Daemon
- Monitoring Executions
- Variable Registry (var/var_or)
- Cleaning Up Events
- Explanation