Design Quarkus 3 backend patterns for messaging, APIs, data, and async workflows.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "quarkus-patterns" skill from askskill: 1. Download https://raw.githubusercontent.com/affaan-m/ECC/main/skills/quarkus-patterns/SKILL.md 2. Save it as ~/.claude/skills/quarkus-patterns/SKILL.md 3. Reload skills and tell me it's ready
Using Quarkus 3.x LTS and Camel, design an event-driven order service architecture. Include a REST API, message consumption and publishing, CDI service layers, Panache entity and repository design, async processing flow, and key code skeletons.
A practical order service architecture with module breakdown, flow explanation, and implementable Quarkus code skeletons.
Create a RESTful API specification for a Quarkus-based user management microservice, including resource paths, request and response structures, error handling, pagination, input validation, status code conventions, and matching Java interface examples.
A clear REST API design specification with Quarkus-style interface examples.
My Quarkus backend uses Camel for asynchronous messaging. Help me design a more reliable processing pattern, including retries, dead-letter queues, idempotency control, transaction boundaries, monitoring metrics, and implementation recommendations.
A reliability-focused async processing pattern that improves stable message consumption and handling.
Quarkus 3.x architecture and API patterns for cloud-native, event-driven services with Apache Camel.
@Slf4j
@ApplicationScoped
@RequiredArgsConstructor
public class OrderProcessingService {
private final OrderValidator orderValidator;
private final EventService eventService;
private final OrderRepository orderRepository;
private final FulfillmentPublisher fulfillmentPublisher;
private final AuditPublisher auditPublisher;
@Transactional
public OrderReceipt process(CreateOrderCommand command) {
ValidationResult validation = orderValidator.validate(command);
if (!validation.valid()) {
eventService.createErrorEvent(command, "ORDER_REJECTED", validation.message());
throw new WebApplicationException(validation.message(), Response.Status.BAD_REQUEST);
}
Order order = Order.from(command);
orderRepository.persist(order);
OrderReceipt receipt = OrderReceipt.from(order);
fulfillmentPublisher.publishAsync(receipt);
auditPublisher.publish("ORDER_ACCEPTED", receipt);
eventService.createSuccessEvent(receipt, "ORDER_ACCEPTED");
log.info("Processed order {}", order.id);
return receipt;
}
}
Key Patterns:
@RequiredArgsConstructor for constructor injection via Lombok@Slf4j for Logback logging@Transactional on service methods that write through Panache or repositories@ApplicationScoped
public class ProcessingService {
public void processDocument(Document doc) {
LogContext logContext = CustomLog.getCurrentContext();
try (SafeAutoCloseable ignored = CustomLog.startScope(logContext)) {
// Add context to all log statements
logContext.put("documentId", doc.getId().toString());
logContext.put("documentType", doc.getType());
logContext.put("userId", SecurityContext.getUserId());
log.info("Starting document processing");
// All logs within this scope inherit the context
processInternal(doc);
log.info("Document processing completed");
} catch (Exception e) {
log.error("Document processing failed", e);
throw e;
}
}
}
Logback Configuration (logback.xml):
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="net.logstash.logback.encoder.LogstashEncoder">
<includeContext>true</includeContext>
<includeMdc>true</includeMdc>
</encoder>
</appender>
<logger name="com.example" level="INFO"/>
<root level="WARN">
<appender-ref ref="CONSOLE"/>
</root>
</configuration>
@Slf4j
@ApplicationScoped
@RequiredArgsConstructor
public class EventService {
private final EventRepository eventRepository;
private final ObjectMapper objectMapper;
public void createSuccessEvent(Object payload, String eventType) {
Objects.requireNonNull(payload, "Payload cannot be null");
Event event = new Event();
…
Learn practical Kotlin Coroutines and Flow patterns for Android and KMP.
Get idiomatic C# and .NET guidance for architecture, async, and dependency injection.
Use the correct Ethereum Keccak-256 hashing in Node.js and TypeScript.
Convert UI screenshots or mockups into Vue 3 components in batch.
Suggests manual context compaction at key stages to preserve task continuity.
Build thread-safe Swift persistence with actors, cache, and file-backed storage.
Apply test-driven development to Quarkus 3.x features, fixes, and refactors.
Design and improve Spring Boot backend architecture, APIs, and service implementation.
Learn Laravel production architecture patterns and core backend implementation practices.
Apply consistent Java coding standards for Spring Boot and Quarkus services.
Get production-ready MySQL and MariaDB schema, query, and operations patterns.
Design or evaluate web services, APIs, scalability, and reliability tradeoffs.