Skip to content

Commit

Permalink
docs: add key features
Browse files Browse the repository at this point in the history
  • Loading branch information
fahchen committed Feb 4, 2025
1 parent 990a700 commit 76ecebb
Showing 1 changed file with 12 additions and 8 deletions.
20 changes: 12 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,20 @@
# ColouredFlow

> [!WARNING]
> The document is WIP. Check examples at [examples folder](./examples).
ColouredFlow is a workflow engine based on [Coloured Petri Nets (CPN)](https://github.com/lmkr/cpnbook).
It provides a flexible and powerful way to model business processes and archive automation.

ColouredFlow is a workflow engine based on Coloured Petri Nets (CPN). It provides a flexible and powerful way to model and execute workflows with complex logic and concurrency. ColouredFlow allows you to define places, transitions, arcs, and tokens with different data types (colours) and expressions.
## Key Features

## Features
- **💻 100% Elixir-based Implementation**: Includes [CPN ML Language](https://github.com/lmkr/cpnbook)
- **🕸️ Distributed by Design**: Enactments (Workflow instances) are isolated, supporting true concurrency and fault tolerance
- **🔧 Complete Workflow Control**: Full implementation of 40+ [workflow control patterns](http://www.workflowpatterns.com/patterns/control/)
- **📊 Event-sourced Enactments**: Enactments(Workflow instances) and Occurrences for detailed analysis and statistics
- **💾 Abstracted Storage**: In-memory storage for testing; Postgres for production
- **📝 DSL**: A simple DSL for defining workflows effectively
- **📡 Built-in Telemetry**: Comprehensive observability and debugging

- Define workflows using Coloured Petri Nets
- Support for various data types (colours) and expressions
- Execute workflows with concurrency and complex logic
- Integration with Ecto for persistence
> [!WARNING]
> The document is WIP. Check examples at [examples folder](./examples).
## Installation

Expand Down

0 comments on commit 76ecebb

Please sign in to comment.