Workflow Awesome
- 功能维度
- BPMS - 业务为中心,强调自定义流程,业务流程管理系统
 - Orchestration
- 编排,强调任务的顺序和依赖关系
 - 强调基础设施能力
 - Durable Functions
 
 - Workflow Automation
- 事件驱动,强调事件的触发和处理
 
 - Low-code workflow automation
- 低代码,强调用户友好
 - 大多情况是 Event Driven/Webhook
 - 强调自定义编排
 - 大多情况是对接各种 API
 
 - Data Pipelines
- 围绕数据的批处理
 - 通常有很多 connector
 
 - Stream Processing
- 实时数据处理
 
 - Machine Learning Workflow
- 机器学习的工作流
 
 
 - 基础设施
- 执行调度 - Kubernetes, ML Ops, KEDA
 - 事件触发 - Webhook, Kafka, NATS, HTTP, KEDA
 - Workflow 调度 - Argo, Temporal, Cadence, Durables Functions
 - Job Queue - RabbitMQ, Redis, PG
 - Message Queue - Kafka, NATS
 - Storage - S3, Minio, PG
 - Stream - Kafka, Flink, Hazelcast Jet, NATS
 
 
- BPMS
- Camunda BPM
 - Activiti
 - camunda-cloud/zeebe
 - flowable/flowable-engine
 - bonitasoft/bonita-engine
 - kiegroup/jbpm
 - ProcessMaker
- AGPL-3.0, PHP
 
 
 - Orchestration - 编排
- temporalio/temporal
- cadence fork - 2020-10
 
 - uber/cadence
- by Uber
 
 - conductor
- Apache-2.0, Java, gRPC
 - from Netflix
 
 - restatedev/restate
- BSL-1.1, Rust
 - Lambda Workflows as Code
 - Transactional RPC Handlers
 - Event Processing with Kafka
 - platform for building resilient applications
 
 
 - temporalio/temporal
 - Task Queue/Job Scheduler
- hatchet-dev/hatchet
- MIT, Go, TS
 
 - inngest/inngest
- SSPL, Go, TS
 - scalable, low-latency, event-driven durable execution platform
 
 - xuxueli/xxl-job
- GPLv3, Java
 - 分布式任务调度平台
 
 
 - hatchet-dev/hatchet
 - Event Driven/Low-code/workflow automation/API Orchestration
- brigadecore/brigade
- Apache-2.0, Go
 - scripting for Kubernetes
 - ⚠️ 停止开发
 
 - node-red/node-red
- Apache-2.0, Javascript
 
 - n8n-io/n8n
- faircode, Typescript
 
 - argoproj/argo-workflows
- Apache-2.0, Golang
 - Workflow engine for Kubernetes
 
 - activepieces/activepieces
- MIT, Typescript
 - no-code workflow builder
 
 - PipedreamHQ/pipedream
- SALv1, JS, TS
 
 - StackStorm/st2
- Apache-2.0, Python
 - IFTTT for Ops
 
 - rundeck/rundeck
- Apache-2.0, Groovy, Java
 
 muesli/beehive- AGPL-3.0, Go
 - event/agent & automation system
 
 - brigadecore/brigade
 - data pipelines/batch processing
- spotify/luigi
- Apache-2.0, Python
 
 - airflow
 - flink
 - rudderlabs/rudder-server
- ELv2, Golang
 - Privacy and Security focused Segment-alternative, in Golang and React
 
 - PrefectHQ/prefect
- Apache-2.0, Python
 - orchestrator for data-intensive workflows
 
 multiprocessio/datastation- Segment
 
 - spotify/luigi
 - Serverless/Workflow
- windmill-labs/windmill
- AGPLv3, Rust, Svelte
 - scripts into workflows and UIs
 - alternative to Airplane, Retool
 
 - Airplane
 - Retool
 
 - windmill-labs/windmill
 - State Machine
- https://www.w3.org/TR/scxml/
 - statelyai/xstate
- MIT, TS
 - 状态机
 
 - matthewp/robot
- BSD-2, JS
 
 - ifandelse/machina.js
- MIT, JS
 
 - jakesgordon/javascript-state-machine
- MIT, JS
 
 - pytransitions/transitions
- MIT, Python
 
 
 - Huginn
- Python
 
 - enso-org/enso
- Apache-2.0, Scala
 - Hybrid visual and textual functional programming.
 
 - rundeck
 - nextflow-io/nextflow
- Apache-2.0, Groovy
 
 runabol/piper- Apache-2.0, Java
 - distributed workflow engine
 
- https://github.com/huginn/huginn
- MIT, Ruby
 
 
- meirwah/awesome-workflow-engines
 - NodeJS
- mithunsatheesh/node-rules
- light weight forward chaining rule engine
 
 - oliverzy/process-engine.js
 
 - mithunsatheesh/node-rules
 
Spec
- BPMS
 - serverlessworkflow
 - IDEF0 - Integration Definition for Process Modelling
- wikipedia IDEF0
 - Visio Create IDEF0 diagrams
 
 - BPEL - Business Process Execution Language
 - DFD - Data Flow Diagram
 - Process - Stage - Activity - Participant
 - Workflow engine