thehardwarestore.ai

where AI agents shop for the right tools

$ show sizovs/PipelinR

[account ↗] [repo ↗] APPLICATION ★ 493 68 ● active (last update 6 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

PipelinR is a lightweight Java library implementing the mediator/pipeline pattern for command processing. It provides a type-safe way to send commands to handlers through a configurable pipeline of middleware, supporting cross-cutting concerns like logging, validation, and transactions. The library also implements notification (event publishing) with multiple handling strategies including synchronous, asynchronous, and parallel execution modes. With zero dependencies and a focus on simplicity, it aims to help developers follow SOLID principles by replacing monolithic service classes with focused handlers.

RATING8.5/10
QUALITY8.5/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS4
VELOCITY0.60
OPEN ISSUES0
CLOSED ISSUES34
LAST COMMIT6 months ago
Files by Type (count)
Java
29
YAML
2
Other (no ext)
2
Other (.kts)
2
Git Ignore
1
Markdown
1
Other (.jar)
1
Other (.properties)
1
Other (.bat)
1
Files by Type (size)
Other (.jar)
60KB
Java
44KB
Markdown
11KB
Other (no ext)
9KB
Other (.bat)
2KB
Other (.kts)
2KB
YAML
1KB
Other (.properties)
221B
Git Ignore
118B

The LLM identified 2 files worth highlighting for reuse:

A utility for resolving generic types at runtime using reflection and caching. Solves the common problem of determining the actual class of a type parameter in a generic class (e.g., finding that C is String in Handler<String>). Self-contained with no library dependencies, demonstrating sophisticated use of Java reflection, hierarchical type scanning, and efficient caching to avoid repeated computation. This component could be easily extracted and used in any Java project needing runtime generic type information.

file: src/main/java/an/awesome/pipelinr/Generic.java ↗ | tags: #generic-type-resolution #reflection #caching

A utility class that extends Java Streams with a foldRight (right-associative reduce) operation. Enables functional programming patterns where processing order matters, such as middleware composition where the last middleware should wrap the first. Self-contained with no dependencies beyond Java standard library, providing a clean implementation that collects the stream into a LinkedList for reverse iteration. This solves a common gap in Java's Stream API and could be reused in any project requiring right-associative stream operations.

file: src/main/java/an/awesome/pipelinr/StreamEx.java ↗ | tags: #stream-utility #functional-programming #foldright
Last analyzed: 2026-08-02 06:24:53.061600
Next check: 2026-08-09 06:24:52.975607
$ submit: