{"enrichment":{"faq":[{"a":"event-driven-architecture teaches you to design event-driven microservices by decoupling services through asynchronous messaging. You'll learn to identify domain events, choose appropriate message brokers (Kafka, RabbitMQ, SQS), and structure consumers to react to events reliably. The skill covers event sourcing and CQRS patterns to maintain consistency across distributed systems while enabling independent service scaling.","q":"How do I design event-driven microservices?"},{"a":"event-driven-architecture provides a message broker selection guide comparing Kafka, RabbitMQ, SQS/SNS, and NATS. Kafka excels at event streaming and replay; RabbitMQ offers flexible routing and traditional queuing; SQS provides managed AWS integration. The skill helps you evaluate trade-offs in throughput, durability, ordering guarantees, and operational complexity to pick the right broker for your architecture.","q":"What's the difference between Kafka, RabbitMQ, and SQS?"},{"a":"event-driven-architecture covers building idempotent event consumers that safely handle duplicate messages. You'll learn to design consumers with idempotency keys, implement deduplication logic, and use database constraints to ensure exactly-once semantics. The skill also teaches consumer group management and offset handling to prevent reprocessing while maintaining reliability across retries and failures.","q":"How do I handle duplicate messages in event consumers?"},{"a":"event-driven-architecture explains saga patterns for implementing distributed transactions and long-running workflows across microservices. You'll learn orchestration and choreography approaches, how to coordinate state changes via events, and recovery strategies when steps fail. Sagas replace traditional ACID transactions, enabling eventual consistency while maintaining workflow integrity in event-driven systems.","q":"What is the saga pattern for distributed transactions?"},{"a":"event-driven-architecture covers setting up dead letter queues (DLQs) with monitoring and replay tooling to handle failed messages. You'll learn to configure DLQ routing, implement alerting on poison messages, and build replay mechanisms to reprocess failures. The skill includes best practices for investigating root causes, preventing cascading failures, and maintaining system observability in production.","q":"How do I set up dead letter queues with monitoring?"},{"a":"event-driven-architecture teaches the transactional outbox pattern to reliably publish events without losing messages during failures. You'll learn to write domain events to an outbox table within the same transaction as your business logic, then use a separate process to publish them to your message broker. This pattern ensures exactly-once delivery semantics and decouples event publishing from service logic.","q":"What is the transactional outbox pattern?"}],"shadow_tags":["message-broker","distributed-systems","async-messaging","microservice-patterns","workflow-orchestration","failure-recovery","event-streaming","data-consistency","consumer-patterns","queue-management"],"summary_rewrite":"Master asynchronous system design through message brokers, event sourcing, and distributed transaction patterns. This skill covers Kafka, RabbitMQ, SQS/SNS integration alongside CQRS, saga orchestration, idempotency strategies, and failure handling with dead letter queues\u2014everything needed to build resilient, decoupled microservice architectures."},"files":[{"bytes":16691,"path":"skills/event-driven-architecture/SKILL.md","sha256":"501d35af1cda57c77d9f03389a57e1a9a1987ecccf0b9ba053b551543c3706f4","url":"https://skillfed.io/files/travisjneuman/.claude/event-driven-architecture/75608a57/SKILL.md"}],"id":"travisjneuman/.claude/event-driven-architecture","links":{"html":"https://skillfed.io/travisjneuman/.claude/event-driven-architecture","md":"https://skillfed.io/travisjneuman/.claude/event-driven-architecture.md","repo":"https://github.com/travisjneuman/.claude"},"meta":{"agents_supported":[],"first_seen":"2026-07-28","forks":20,"language":"JavaScript","last_updated":"2026-07-17","license":"MIT","name":"event-driven-architecture","publisher":"travisjneuman","stars":85},"relations":{"categories":["microservices","distributed-systems","event-driven-architecture"],"similar":[{"id":"rohitg00/awesome-claude-code-toolkit/microservices-design"},{"id":"qodex-ai/ai-agent-skills/event-driven-serverless-systems"},{"id":"manutej/luxor-claude-marketplace/enterprise-architecture-patterns"},{"id":"LerianStudio/ring/using-lib-streaming"},{"id":"patricio0312rev/skills/event-driven-architect"},{"id":"Jeffallan/claude-skills/microservices-architect"},{"id":"giuseppe-trisciuoglio/developer-kit/aws-sdk-java-v2-messaging"},{"id":"LerianStudio/ring/using-outbox"},{"id":"itsmostafa/aws-agent-skills/sqs"},{"id":"wshaddix/dotnet-skills/dotnet-messaging-patterns"}]},"slug":{"owner":"travisjneuman","repo":".claude","skill":"event-driven-architecture"},"version":"75608a57"}
