Skip to content

A Rust library for orchestrating and chaining small automation tasks through simple declarative flows.

Notifications You must be signed in to change notification settings

m0nirul/task-weaver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

task-weaver

A Rust library for orchestrating and chaining small automation tasks through simple declarative flows. Task-weaver helps automate repetitive command-line workflows by linking executable tasks with conditional triggers.

Installation

Add task-weaver to your Cargo.toml dependencies:

cargo add task-weaver

Or manually:

[dependencies]
task-weaver = "0.1.0"

Usage

Sample Task Flow YAML

tasks:
  - name: "fetch-data"
    command: "curl https://api.example.com/data.json"
    on_success: "process-data"
  - name: "process-data"
    command: "python process.py"
    run_if: "fetch-data.output contains 'success'"
    parallel: true

Example: Integrating in Rust

use task_weaver::TaskFlow;

let config = std::fs::read_to_string("flow.yaml")?;
let flow: TaskFlow = serde_yaml::from_str(&config)?;
flow.execute()?;

Features

  • Declarative task configuration (YAML)
  • Conditional triggers (run_if) for flexible flows
  • Parallel and sequential execution modes

License

MIT

About

A Rust library for orchestrating and chaining small automation tasks through simple declarative flows.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages