nestrs-workflows
Durable multi-step workflows for nestrs — NestJS @nestjs/workflows analogue.
Persist step results, resume after process restart, and park for human approval. Combine with nestrs-locks for single-runner steppers and nestrs-outbox for side effects.
Install
[]
= "1.7.1"
Or via the umbrella (also enables outbox + locks):
= { = "1.7.1", = ["workflows"] }
Register
use ;
;
Lifecycle
start → complete_step → … → wait_for_approval → approve → complete_step → …
use WorkflowsService;
use json;
use Arc;
async
A new WorkflowsService sharing the same WorkflowStore resumes from persisted state after a logical restart.
Status
WorkflowStatus |
Meaning |
|---|---|
Running |
Active steps |
WaitingApproval |
Parked until approve |
Completed |
Finished |
Failed |
Terminal failure |
Surface
WorkflowsModule/WorkflowsOptions/WorkflowsServiceWorkflowInstance,WorkflowStatusInMemoryWorkflowStore/WorkflowStoretrait
Docs
- Guide: Workflows
- Hub: Reliability
- rustdoc: https://docs.rs/nestrs-workflows/1.7.1
- Lab:
cargo run -p lab --bin lab9_nestjs12
License
MIT OR Apache-2.0.