event-driven-architect

Design event-driven architectures with Kafka, Dapr pub/sub, and microservice patterns.

1|Updated Dec 5, 2025
One-click install
npx skills add https://github.com/rabiasohail098/todo-app-hackthon2 --skill event-driven-architect-rabiasohail098
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: event-driven-architect
Source: https://github.com/rabiasohail098/todo-app-hackthon2/tree/main/.claude/skills/event-driven-architect
Command: npx skills add https://github.com/rabiasohail098/todo-app-hackthon2 --skill event-driven-architect-rabiasohail098

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps engineers design and implement robust event-driven cloud architectures using Kafka topics, Dapr pub/sub, and scalable microservice patterns, enabling async communication and fault-tolerant workflows.

Core Features & Use Cases

  • Event design and governance: define clear topic naming conventions and event schemas for reliable inter-service communication.
  • Dapr pub/sub integration: abstract brokers for cloud portability and resilience.
  • Architecture patterns: support for transactional outbox, idempotent consumers, and dead-letter handling across services.
  • Use cases: building a Todo-style service, analytics pipelines, and notification flows with event choreography.

Quick Start

Deploy a minimal event-driven setup with a Todo-like service, a publisher emitting todos.task.created events, and a subscriber handling them, using Docker and Dapr to run locally.

Frequently Asked Questions about event-driven-architect

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design event-driven architectures with Kafka and microservices?

Event-driven architectures use asynchronous messaging between microservices to decouple systems. Define clear topic naming conventions, implement idempotent consumers, and use patterns like transactional outbox to ensure reliable inter-service communication across Kafka brokers or Dapr pub/sub abstractions.

What is Dapr pub/sub and why use it instead of managing Kafka directly?

Dapr pub/sub abstracts the underlying message broker—Kafka, RabbitMQ, or cloud services—enabling cloud-portable event-driven designs without vendor lock-in. It simplifies resilience patterns, dead-letter handling, and cross-service communication workflows in containerized deployments.

Do I need Docker and Kubernetes to run event-driven microservices?

Docker is required for local development and containerized deployment of event-driven services. Kubernetes is optional but recommended for production orchestration of distributed microservices; Dapr works in both Docker Compose and Kubernetes environments to manage pub/sub routing and fault tolerance.

How do I handle failures and ensure fault tolerance in event-driven systems?

Implement resilience techniques: idempotent message consumers prevent duplicate processing, dead-letter queues capture undeliverable events, and transactional outbox patterns ensure events are published alongside data changes. Dapr abstracts broker-specific retry and timeout logic across services.

Can I use event-driven architecture for notification systems and analytics pipelines?

Yes. Event-driven patterns support both use cases: emit domain events (like todos.task.created), route them through Dapr pub/sub, and subscribe independent services for notifications or analytics aggregation. Choreography patterns coordinate workflows across multiple subscribers without central orchestration.

What event naming conventions should I follow for reliable inter-service communication?

Use clear, hierarchical event naming—for example, service.entity.action (todos.task.created)—paired with defined schemas. This prevents naming collisions, enables subscribers to filter topics predictably, and makes event governance auditable across microservices.