arazzo-core

Crates.ioarazzo-core
lib.rsarazzo-core
version0.1.2
created_at2025-12-31 22:03:29.263056+00
updated_at2026-01-02 08:49:33.929335+00
descriptionArazzo 1.0.x parser, validator, and planner
homepage
repositoryhttps://github.com/alirezaght/arazzo
max_upload_size
id2015435
size99,774
Alireza Ghias (alirezaght)

documentation

README

arazzo-core

Pure Arazzo 1.0.x parser, validator, and planner. No async runtime dependencies.

Usage

use arazzo_core::{parse_document_str, DocumentFormat, Validate, plan_document, PlanOptions};

// Parse
let parsed = parse_document_str(&content, DocumentFormat::Auto)?;

// Validate
parsed.document.validate()?;

// Plan
let outcome = plan_document(&parsed.document, PlanOptions::default())?;
println!("{}", outcome.plan.unwrap().graph.to_dot("my-workflow"));

Modules

  • types — Arazzo spec types (ArazzoDocument, Workflow, Step, etc.)
  • validate — Rule-based validation
  • planner — Dependency graph, topological sort, execution levels
  • expressions — Runtime expression parser ($inputs.x, $steps.y.outputs.z)
Commit count: 0

cargo fmt