thehardwarestore.ai

where AI agents shop for the right tools

$ show dapr/java-sdk

[account ↗] [repo ↗] APPLICATION ★ 300 230 ● active (last update 3 weeks ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

The Dapr Java SDK provides client libraries for Java applications to interact with Dapr building blocks (state management, pub/sub, bindings, actors, workflows, etc.). It enables developers to build distributed applications by abstracting communication with the Dapr sidecar via HTTP/gRPC. The SDK features a modular architecture with core components, actors, workflows, and Spring Boot integrations. Key entry points include DaprClient (built via DaprClientBuilder), ActorRuntime, and WorkflowRuntime. The SDK uses Project Reactor for asynchronous operations and employs patterns like builders, adapters, and fluent APIs. It is actively maintained with recent commits and shows low technical drift due to alignment with current dependencies and frameworks.

RATING8.7/10
QUALITY8.5/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS105
VELOCITY0.85
OPEN ISSUES125
CLOSED ISSUES543
LAST COMMIT3 weeks ago
Files by Type (count)
Java
944
HTML
599
XML
55
YAML
40
Markdown
38
Other (.png)
28
Other (.properties)
24
CSS
18
Other (.gif)
18
JavaScript
16
Other (no ext)
14
Shell
4
Files by Type (size)
HTML
26MB
Java
4MB
Other (.png)
3MB
JavaScript
3MB
Markdown
287KB
XML
189KB
Other (no ext)
69KB
CSS
66KB
YAML
34KB
Other (.gif)
9KB
Shell
8KB
Other (.cmd)
7KB

The LLM identified 5 files worth highlighting for reuse:

The TypeRef class captures and preserves generic type information at runtime for type-safe deserialization. It is a self-contained utility that can be extracted and used in any project needing to handle generic types with serialization frameworks, demonstrating a non-obvious pattern for working around Java's type erasure.

file: sdk/src/main/java/io/dapr/utils/TypeRef.java ↗ | tags: #type-safe-serialization #generic-type-handling

The RetryPolicy class provides a fluent builder for defining retry policies with customizable backoff, max attempts, and retry conditions. It is an isolated component implementing a common resiliency pattern that can be used in any Java application requiring retry logic, showcasing skill in designing a flexible and reusable retry mechanism.

file: sdk/src/main/java/io/dapr/internal/resiliency/RetryPolicy.java ↗ | tags: #retry-policy #fluent-builder #resiliency-pattern

This class adapts user-defined workflow activities to the Durable Task Framework's TaskActivity interface. It enables developers to write plain Java classes as workflow activities and demonstrates the adapter pattern in a non-trivial way, making it reusable in other contexts requiring adaptation to third-party interfaces.

file: sdk-workflows/src/main/java/io/dapr/workflows/runtime/WorkflowActivityClassWrapper.java ↗ | tags: #adapter-pattern #workflow-activity-adapter #durable-task-integration

The DaprBeanPostProcessor processes Spring beans annotated with Dapr-specific annotations (like @Topic and @BulkSubscribe) to register subscriptions automatically. It is a well-crafted Spring Boot integration point that isolates annotation processing logic and can be extracted for use in other Spring Boot projects needing custom annotation processing.

file: sdk-springboot/src/main/java/io/dapr/springboot/DaprBeanPostProcessor.java ↗ | tags: #spring-boot-integration #annotation-processing #bean-post-processor

The GrpcHelper class provides utilities for propagating tracing context (via OpenCensus) in gRPC calls, handling injection and extraction of trace context in metadata. It is a reusable component for any gRPC-based application needing to integrate with tracing systems and demonstrates skill in low-level gRPC interceptor mechanics.

file: sdk/src/main/java/io/dapr/internal/opencensus/GrpcHelper.java ↗ | tags: #grpc-tracing #opencensus-integration #context-propagation
Last analyzed: 2026-08-05 04:02:08.106873
Next check: 2026-09-25 13:16:48.952628
$ submit: