Skip to content

Introduction

The Pipeline Framework is a powerful tool for building reactive pipeline processing systems. It simplifies the development of distributed systems by providing a consistent way to create, configure, and deploy pipeline steps.

Visual Pipeline Designer
The Pipeline Framework includes a visual canvas designer at https://app.pipelineframework.org that allows you to create and configure your pipelines using an intuitive drag-and-drop interface. Simply design your pipeline visually, click "Download Application", and you'll get a complete ZIP file with all the generated source code - no command-line tools needed!

Key Features

  • Reactive Programming: Built on top of Mutiny for non-blocking operations
  • Immutable Architecture (by default): Persistence is append-first and configurable; updates are explicit and opt-in
  • Visual Design Canvas: Create and configure pipelines with the visual designer at https://app.pipelineframework.org
  • Annotation-Based Configuration: Simplifies adapter generation with @PipelineStep
  • gRPC & REST Flexibility: Automatic adapter generation for fast gRPC or easy REST integration
  • Multiple Processing Patterns: OneToOne, OneToMany, ManyToOne, ManyToMany, SideEffect and blocking variants
  • Health Monitoring: Built-in health check capabilities
  • Multiple Persistence Models: Choose from reactive or virtual thread-based persistence
  • Modular Design: Clear separation between runtime and deployment components
  • Test Integration: Built-in support for unit and integration tests with Testcontainers

Framework Overview

For complete documentation of the framework architecture, implementation details, and reference implementations, see the complete documentation files in the main repository:

How It Works

The framework lets you define pipeline steps as simple classes annotated with @PipelineStep. At build time, it generates the adapters and infrastructure, keeping services clean and focused on business logic.

Build Fast

Design

Build

Develop

Observe

Extend

Evolve

This approach reduces boilerplate and keeps pipeline code consistent and portable.