Expand description
Orka: An ASYNC pluggable, type-safe workflow engine for Rust.
Orka allows you to define complex, multi-step processes (pipelines) with features like:
- Named steps with before/on/after hooks.
- Asynchronous handlers for I/O-bound operations.
- Early stopping or continuing of pipeline execution.
- Dynamic step mutation (inserting, removing steps).
- Per-step extractors for operating on sub-contexts.
- Conditional execution of scoped pipelines, allowing dynamic workflow branching.
- A type-keyed registry for managing and running different pipelines.
Re-exports§
pub use crate::core::control::PipelineControl;pub use crate::core::control::PipelineResult;pub use crate::core::step::StepDef;pub use crate::core::context::Handler;pub use crate::core::context::ContextDataExtractorImpl;pub use crate::core::context_data::ContextData;pub use crate::pipeline::definition::Pipeline;pub use crate::conditional::builder::ConditionalScopeBuilder;pub use crate::conditional::builder::ConditionalScopeConfigurator;pub use crate::conditional::provider::PipelineProvider;pub use crate::conditional::provider::StaticPipelineProvider;pub use crate::error::OrkaError;pub use crate::error::OrkaResult;pub use crate::registry::Orka;
Modules§
- conditional
- Enables conditional execution of scoped pipelines within a step of a main pipeline.
- core
- error
- pipeline
- Defines the
Pipeline<T>struct, its construction, modification, and execution logic. - registry
- Defines the
Orka<E>struct, a type-keyed registry for managing and executing pipelines. Pipelines arecrate::pipeline::definition::Pipeline<TData, PipelineHandlerError>. The registry returns results with an application-level error typeE.