2

I'm looking at creating a web-based workflow platform that meets the following requirements.

A workflow is a DAG of steps available in the user interface and can be stored as a JSON or YAML

Steps: Tasks or functions,  can take input as well as output from prior steps, these tasks can be I/O or CPU bound.

  1. Create a workflow by dragging and dropping steps from a web UI.
  2. All programming options, such as skip or execute on condition, loop on items, and so on, should be supported by steps.
  3. allows for a halt for approval and then a resume.
  4. Multi tenancy support 
  5. scalable
  6. guaranteed execution
  7. These workflow should be able to trigger/schedule from UI

For the above requirement, I have been exploring various open-source workflow engines and narrowed down my choice to cadence and kestra

But I am still not sure whether I should design a workflow engine from scratch or should be dependent on an open-source option considering my requirement. Is cadence a good choice if I want to move ahead for my requirement

1 Answers1

2

I would recommend starting with an open-source project as it seems easier than starting from scratch. Kestra satisfies all the above-mentioned criteria. I currently work there and happy to answer questions. If some features you need are lacking, we are open to feature requests and feedback - you can open an issue on GitHub https://github.com/kestra-io/kestra

Anna Geller
  • 1,653
  • 7
  • 10