- Go 1.26+
- Git
git clone https://github.com/GoCodeAlone/workflow.git
cd workflow
go build -o server ./cmd/server
go build -o wfctl ./cmd/wfctl./server -config example/simple-workflow-config.yamlVisit http://localhost:8080 to see your server running.
The example/ directory contains 27 top-level example/*.yaml configurations, plus additional configs under application subdirectories:
ls example/*.yaml | head -20Try the order processing pipeline:
./server -config example/order-processing-pipeline.yaml./wfctl validate example/order-processing-pipeline.yaml./wfctl inspect example/order-processing-pipeline.yamlThis shows modules, workflows, triggers, and the dependency graph.
A workflow config has three main sections:
# 1. Modules - the building blocks
modules:
- name: my-server
type: http.server
config:
address: ":8080"
# 2. Workflows - how modules connect
workflows:
http:
routes:
- method: GET
path: /hello
handler: my-handler
# 3. Triggers - what starts execution
triggers:
- type: http
config:
port: 8080- Building Plugins - Create custom components
- Scaling Workflows - Production deployment
- Chat Platform Walkthrough - Full application example
- API Reference - REST endpoint documentation