Build Powerful Pipelines
in Ruby

Ductwork is a modern workflow orchestration framework that makes complex job pipelines simple, testable, and maintainable.

app/pipelines/enrich_all_users_data_pipeline.rb
# Define your pipeline with the DSL
class EnrichAllUsersDataPipeline < Ductwork::Pipeline
  define do |pipeline|
    pipeline.start(QueryUsersRequiringEnrichment)
            .expand(to: LoadUserData)
            .divide(to: [FetchDataFromSourceA, FetchDataFromSourceB])
            .combine(into: CollateUserData)
            .chain(UpdateUserData)
            .collapse(into: ReportUserEnrichmentSuccess)
  end
end

# Run your pipeline!
EnrichAllUsersDataPipeline.trigger(days_since_last_enrichment: 7)

Why Choose Ductwork?

Everything you need to build reliable, scalable job pipelines in Ruby

Pipeline Orchestration

Define complex workflows with branching, parallel execution, and branch merge methods.

Solid Performance

Built-in support for configuring and tuning thread parallelization keeps your pipelines fast.

Error Resilience

Automatic retries, graceful failure handling, and detailed error reporting ensure reliability.

Easy to Test

Comprehensive testing helpers and matchers make it simple to verify your pipeline behavior.

State Persistence

Built-in state management lets you deploy without the fear of interrupting pipeline execution.

Rails Integration

First-class Rails support with generators, configurations, and ActiveRecord integration out of the box.

Designed For

Ductwork shines in scenarios where building traditional job queues fall short

 Document Processing

Multi-step document transformation with validation, OCR, and storage

 Order Fulfillment

Complex order workflows with inventory checks, payment processing, and notifications

 Data Migrations

Large-scale data transformations with checkpoints and rollback capabilities

 ETL Pipelines

Extract, transform, and load data with parallel processing and error recovery

 Email Campaigns

Multi-stage email workflows with personalization, scheduling, and tracking

 Onboarding Flows

User onboarding processes with sending welcome emails and reminders

Simple, Transparent Pricing

Start free and scale as you grow. All plans include core pipeline features.

Open Source

Free Forever

Perfect for getting started and POC projects

  • Core pipeline features
  • Pipeline definition DSL
  • Process supervisor
  • Scalable threaded job worker pool
  • Error handling
  • Test helpers
  • Community Support
Get Started
Most Popular

Professional

$200 /month

For growing teams and production workloads

  • Everything in Open Source
  • Web dashboard
  • Scalable pipeline advancer threads
  • Step timeout features
  • Step delay features
  • Metrics
  • Direct multi-channel Support
Start 14-Day Free Trial

Enterprise

Custom

For organizations with custom requirements

  • Everything in Professional
  • Percent rollout features
  • Circuit breaker pattern
  • Rate limiting
  • Configure underlying process model
  • Multi-process
  • Guaranteed Support SLAs
Contact

Get 2 months free when using a Yearly Professional Plan ($2,000/year).