| Crates.io | bpmn-sdk |
| lib.rs | bpmn-sdk |
| version | 0.1.0 |
| created_at | 2025-11-10 14:34:04.376944+00 |
| updated_at | 2025-11-10 14:34:04.376944+00 |
| description | Type-safe Rust DSL for declarative BPMN process modeling |
| homepage | |
| repository | https://github.com/gftdcojp/bpmn-sdk |
| max_upload_size | |
| id | 1925623 |
| size | 83,475 |
Type-safe Rust DSL for declarative BPMN process modeling. This SDK provides a fluent, compile-time validated API for building BPMN 2.0 process definitions that compile to bpmn-engine's ProcessDefinition format.
bpmn-engineuse bpmn_sdk::dsl::flow;
let invoice_process = flow("InvoiceApproval", |f| {
f.process("InvoiceApproval", |p| {
p.start_event("StartEvent")
.user_task("ReviewInvoice")
.name("Review Invoice")
.assignee("${managerId}")
.exclusive_gateway("AmountCheck")
.service_task("AutoApprove")
.condition("${amount <= 1000}")
.end_event("EndEvent")
.build()
})
});
let validated = invoice_process.validate()?;
let compiled = validated.compile();
let definition = compiled.into_definition(); // ProcessDefinition for bpmn-engine
ProcessDefinitionMIT OR Apache-2.0