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 robust error-handling patterns across TypeScript, Python, and Go applications.
Manage carrier portfolios, negotiate freight rates, and evaluate carrier performance.
Design and implement robust F# unit, property, and integration tests
Apply test-driven development to Quarkus 3.x features, fixes, and refactors.
Generate images, videos, and audio with one unified AI media workflow.
Run a pre-release verification loop for Quarkus builds, tests, scans, and reviews.
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.
Design and evaluate event-driven, message-based, and asynchronous system architectures.