Orchestration Drivers
Orchestration drivers handle the execution of your workflows. They manage state persistence, retries, and scheduling—the orchestration layer beneath your workflow code.
Open by design
StepKit workflows aren't locked to a single platform. Write your workflow once, run it anywhere. Switch drivers to match your environment: local development, testing, or production deployment.
The same workflow code works across all drivers. Only the client initialization changes.
Available Drivers
In-Memory Driver
Runs workflows entirely in memory with no persistence. Perfect for testing and development when you need fast iteration without files or databases.
import { InMemoryClient } from "@stepkit/local";
const client = new InMemoryClient();Use for: Unit tests, integration tests, rapid prototyping
Filesystem Driver
Stores workflow state on the local filesystem. Workflows survive restarts and you can inspect state files directly. Best for local development and learning how durable workflows work.
import { FileSystemClient } from "@stepkit/local";
const client = new FileSystemClient({ baseDir: "./.stepkit" });Use for: Local development, learning, debugging workflow state
Inngest Driver
Production-grade orchestration on the Inngest platform. Handles event-driven triggers, observability, retries, and deployment at scale. Recommended for production.
import { Client } from "@stepkit/inngest";
const client = new Client({ id: "my-app" });Use for: Production deployments, event-driven workflows, team collaboration
Choosing a driver
- Building and testing? Start with In-Memory or Filesystem
- Deploying to production? Use Inngest
- Need event triggers or long-running workflows? Use Inngest
The driver is just infrastructure. Your workflow code stays the same.