ZoopFlow Documentation

Welcome to the ZoopFlow documentation. ZoopFlow is a TypeScript framework for building flexible, scalable workflows with strong typing and validation.

This documentation is for ZoopFlow v1.0.0. Use the version selector in the navbar to switch versions.

What is ZoopFlow?

ZoopFlow is a workflow orchestration framework that provides:

  • Type-safe workflows with TypeScript and JSON Schema
  • Reliable execution through Temporal.io integration
  • Flexible composition of reusable steps
  • Robust error handling with recovery patterns
  • Asynchronous signaling for external events
import { defineFlow, defineStep } from '@zoopflow/core';
 
// Define a step
const processPayment = defineStep({
  id: 'payments.process',
  version: '1.0.0',
  // Step implementation
  execute: async (input, context) => {
    // Process payment logic
    return { success: true };
  }
});
 
// Define a flow using the step
const checkoutFlow = defineFlow({
  id: 'checkout.process',
  version: '1.0.0',
  // Flow implementation
  steps: async (input, context) => {
    const paymentResult = await context.executeStep(processPayment, {
      amount: input.amount,
      customerId: input.customerId
    });
    
    return paymentResult;
  }
});

Key Features

  • Strongly Typed Workflows - Define workflows with TypeScript validation
  • Flexible Orchestration - Combine sequential, parallel, and conditional flows
  • Error Handling - Comprehensive error management and recovery
  • Signal Processing - Handle asynchronous events and external triggers
  • State Management - Reliable state persistence and recovery
  • Temporal.io Integration - Built-in integration with Temporal for durable execution

Getting Started

Get started with ZoopFlow by exploring:

Versioned Documentation

This documentation is versioned to match ZoopFlow releases:

Zoop Icon