StepflowStepflow

Introduction

Durable workflow orchestration for TypeScript

Welcome to Stepflow

Stepflow is a self-hosted, framework-agnostic workflow orchestration system for TypeScript.

Features

  • Step-based execution with automatic checkpointing
  • Durable & resumable - steps never re-execute on retry
  • Pluggable storage - Memory, PostgreSQL, Redis, NATS, and more
  • Framework agnostic - Works with Next.js, Hono, Fastify, Express
  • Real-time updates - SSE streaming with React hooks
  • Self-hosted - No vendor lock-in

Quick Start

pnpm add @stepflowjs/core @stepflowjs/storage-memory
import { Stepflow, createWorkflow } from "@stepflowjs/core";
import { MemoryStorageAdapter } from "@stepflowjs/storage-memory";

const workflow = createWorkflow({ id: "hello-world" }, async ({ step }) => {
  const result = await step.run("greet", () => "Hello, Stepflow!");
  return result;
});

const stepflow = new Stepflow({
  storage: new MemoryStorageAdapter(),
});

stepflow.register(workflow);
await stepflow.start();

On this page