An Async Workflow Engine
npm install flomise

Flow + Promise: an async workflow engine.
- Sub-workflow
- Concurrency control
- Retry policy
- Execution monitor
``bash`
npm i flomise
`ts
// Define workflow
const hello = workflow('hello')
.input((message: string, count: number) => message + ':' + count)
.action(async (_ctx, message, count) =>
Array.from({ length: count }, (_, i) => (i > 0 ? ',' + message : message)).join('')
);
// Execute workflow
const engine = createEngine();
const result = await engine.run({}, hello, 'world', 3);
// result: 'world,world,world'
`
`tsecho "${message}"
// Define workflows
const echo = workflow('echo')
.input((message: string) => message)
.action(async (_ctx, message) => );
const hello = workflow('hello', {})
.input((message: string, count: number) => message + ':' + count)
.action(async (ctx, message, count) => {
const echoed = await ctx.run(echo, message);
return Array.from({ length: count }, (_, i) => (i > 0 ? ',' + echoed : echoed)).join('');
});
// Execute workflow
const engine = createEngine();
const result = await engine.run({}, hello, 'world', 3);
// result: echo "world",echo "world",echo "world"
``
MIT License © 2026 XLor