An Erlang-based Business Process Engine implementing BPMN 2.0 (ISO 19510) for workflow orchestration and rule-based production systems.
BPE (Business Process Engine) is an open-source implementation of the BPMN 2.0 standard (ISO 19510) in Erlang. It provides a robust infrastructure for defining workflows, orchestrating processes, and managing distributed storage with a focus on reliability and scalability. It maps BPMN processes one-to-one to Erlang processes for native concurrency and fault tolerance.
Erlang developers and enterprises needing enterprise-grade workflow automation and process orchestration within the Erlang ecosystem. It is suited for teams building systems that require standardized business process modeling, persistent execution, and distributed storage.
Developers choose BPE for its full BPMN 2.0 compliance, which brings a standardized workflow automation specification to Erlang. Its unique selling point is the one-to-one mapping of BPMN processes to Erlang processes, leveraging Erlang's native concurrency, fault tolerance, and persistent storage for reliable and scalable process execution.
BPMN: Business Process Model Notation ISO 19510:2015
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements the complete BPMN 2.0 standard (ISO 19510), enabling standardized business process modeling and interoperability with other BPMN tools.
Maps BPMN processes one-to-one to Erlang processes, leveraging Erlang's built-in concurrency and fault tolerance for scalable, reliable execution.
All process steps are written to persistent storage via KVS, ensuring execution is restorable and reproducible, as demonstrated in the sample history records.
Supports both deterministic tasks and non-deterministic events like message and boundary events, allowing flexible, event-driven workflow orchestration.
Deeply tied to Erlang and its toolchain, requiring significant expertise in Erlang/OTP for effective use, which limits accessibility for teams using other languages.
Lacks visual BPMN editors; processes must be defined programmatically in Erlang or via XML, making it less user-friendly for non-technical stakeholders.
The README is technical and assumes Erlang knowledge, with limited tutorials or third-party resources compared to mainstream BPMN engines in Java or .NET.
bpe is an open-source alternative to the following products: