A lightweight command processing pipeline library for Java applications, enabling clean separation of concerns via small, single-responsibility handlers.
PipelinR is a lightweight command processing pipeline library for Java applications. It structures application logic by encapsulating requests as commands handled by small, single-responsibility handlers, similar to the MediatR pattern in .NET. The library includes middleware support for cross-cutting concerns and integrates smoothly with frameworks like Spring.
Java developers building maintainable service layers, especially in enterprise or FinTech applications, who want to avoid large service classes and adopt a clean, decoupled architecture.
Developers choose PipelinR for its simplicity, minimal footprint (~30kb, no dependencies), and production-ready features like middleware and notifications. It provides a proven alternative to monolithic service classes while offering flexibility for async operations and framework integration.
PipelinR is a lightweight command processing pipeline ❍ ⇢ ❍ ⇢ ❍ for your Java awesome app.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Weighs only ~30kb with no external dependencies, as stated in the README, keeping applications lean and reducing library conflicts.
Proven in serious FinTech applications, ensuring reliability and performance under load, which adds credibility for enterprise use.
Supports ordered middlewares for cross-cutting concerns like logging and transactions, demonstrated with custom implementations in the README examples.
Works well with Spring and Spring Boot, allowing easy dependency injection and ordered middleware configuration via ObjectProvider, as shown in the Spring example.
Compatible with async programming via CompletableFuture and includes a notification system with multiple handling strategies like Async and ParallelWhenAll.
Without Spring, handlers and middlewares must be manually registered using Stream.of, which can be verbose and prone to errors in larger applications.
Users need to implement validation, security, and other middlewares from scratch, as evidenced by the custom ValidationMiddleware example in the README.
At version 0.11, it's not yet stable, and the README doesn't guarantee backward compatibility, risking breaking changes in future updates.
Compared to larger frameworks, there are fewer community extensions or tools for monitoring, making it a DIY solution for advanced features.
PipelinR is an open-source alternative to the following products: