For a study resource for event-driven systems, the first results are eduardopires/equinoxproject, mikaelemmmm/go-zero-looklook and threedotslabs/wild-workouts-go-ddd-example. docshome/microservices and ddd-by-examples/library round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Explore open-source repositories providing architectural patterns, implementation guides, and practical code examples for event-driven systems.
EquinoxProject is an ASP.NET 9 web application template and reference implementation for building enterprise software. It provides a structural boilerplate centered on clean architecture, domain-driven design, and the separation of read and write operations through a command query responsibility segregation framework. The project incorporates event sourcing to track the history of business entities as a sequence of events for auditing and state reconstruction. It utilizes a layered approach to decouple business logic from external dependencies and frameworks. The system includes capabilities
EquinoxProject is a reference implementation for enterprise software built with ASP.NET 9 that demonstrates CQRS and event sourcing through practical code examples, making it a solid fit for exploring event-driven architecture patterns, though it doesn't explicitly showcase message broker integration like Kafka or RabbitMQ.
This project is a reference implementation and architectural blueprint for building distributed systems using the go-zero framework. It provides a complete microservices boilerplate and a standardized project layout to bootstrap API and RPC services with consistent folder structures. The implementation distinguishes itself by providing a comprehensive guide and codebase for service discovery, rate limiting, and circuit breaking. It demonstrates an observability stack integration that coordinates distributed tracing, metrics collection, and centralized logging across multiple microservices. T
This go-zero microservices reference implementation provides practical code examples with Kafka message broker integration, async task queues (asynq), distributed transaction patterns, and observability—making it a strong demonstration of event-driven architecture in a real-world microservices context.
This project is a reference implementation of Domain-Driven Design, Clean Architecture, and Command Query Responsibility Segregation (CQRS) patterns using the Go programming language. It serves as a sample application to demonstrate how to decouple core domain rules from infrastructure and delivery mechanisms. The system is built as a gRPC microservices architecture, utilizing type-safe communication and service contracts. It implements an event-driven architecture to manage eventual consistency and asynchronous processing, specifically employing the Outbox pattern to ensure reliable messagin
This repository is a Go-based sample application illustrating Domain-Driven Design and CQRS within a gRPC microservices architecture, explicitly implementing event-driven patterns like the Outbox pattern for reliable asynchronous messaging—making it a practical, real-world example project for event-driven architecture.
This project is a distributed systems design framework and architecture guide. It provides technical resources for designing, deploying, and coordinating independent network services. The framework establishes a structured methodology for migrating monolithic applications into decentralized services by separating frontend and backend concerns. It serves as a reference for event-driven architecture, focusing on maintaining data consistency across network boundaries using event sourcing and local transaction records. The project covers a broad range of capabilities including distributed servic
This repository is a reference guide and framework for distributed systems and event-driven architecture, covering patterns like event sourcing and message broker integration, which directly serves as a learning resource and reference implementation for the visitor's intent.
This project is a reference implementation of Domain-Driven Design patterns, functional domain modeling, and event-driven state coordination. It demonstrates the application of strategic and tactical design patterns to manage complex business requirements. The implementation utilizes a functional domain model with pure functions and immutable objects to manage state transitions and side effects. It features a Command Query Responsibility Segregation architecture to separate read and write models, alongside event-driven coordination to maintain consistency across autonomous business boundaries
This repository is a reference implementation of Domain-Driven Design that demonstrates event-driven coordination and CQRS in a library management context, providing practical code examples and event-driven patterns, though it lacks explicit message broker integration.
This project is a comprehensive educational resource and technical guide for building enterprise backend applications and RESTful services using the Spring Boot framework. It serves as a step-by-step tutorial for developing server-side logic, API routing, and distributed systems within the Java ecosystem. The documentation provides specific implementation guides for microservices architecture, focusing on coordinating distributed services and event-driven communication. It includes a practical reference for the Spring ecosystem, with detailed sections on security implementation and data persi
This Spring Boot guide provides practical code examples and explicitly covers event-driven communication in a microservices context with RabbitMQ integration, making it a fitting learning resource for event-driven architecture patterns.
SpringBoot-Labs is a collection of educational resources and reference implementations for Java backend architecture and distributed systems. It provides practical lab guides and code samples focused on building applications with the Spring Boot framework and designing scalable microservices architectures. The project specifically covers service governance and distributed cloud deployment patterns using Spring Cloud and Spring Cloud Alibaba. It includes a dedicated kit for microservices and a guide for executing remote procedure calls and managing service discovery via the Dubbo protocol. Th
This repository is a collection of educational labs and reference implementations for Spring Boot microservices, integrating message brokers like Kafka and RabbitMQ, which directly provides practical code examples for event-driven patterns in a microservices context.
This project is a framework for implementing event sourcing and command query responsibility segregation within containerized microservices. It provides a structured approach to managing business state as a sequence of immutable events, ensuring a reliable audit trail and the ability to reconstruct system state at any point in time. The framework distinguishes itself by enforcing a clear separation between data modification and data retrieval paths. By utilizing event-driven data synchronization, it allows for the asynchronous updating of materialized views and read models, ensuring that quer
This repo is exactly what you need: a collection of practical code examples demonstrating event sourcing and CQRS in a microservices context, aligning closely with your interest in event-driven architecture patterns and real-world implementations.
This project is a reference implementation for building scalable applications in TypeScript using Domain-Driven Design. It provides a structured codebase template that organizes business logic through tactical design patterns and strategic modeling to ensure the software reflects specific business requirements. The architecture utilizes a hexagonal pattern to isolate core business logic from external infrastructure concerns such as databases and delivery mechanisms. It implements Command Query Responsibility Segregation to separate data modification operations from information retrieval tasks
It is a complete TypeScript example project applying DDD and hexagonal architecture with RabbitMQ integration and CQRS, providing practical code examples that demonstrate event-driven patterns and microservices context — exactly the kind of reference implementation this search is after.
Watermill is a Go library for building event-driven applications. It provides a framework for implementing event-driven architectures through a consistent interface for message publishing and subscribing, featuring a pub/sub message router and event stream processing pipelines. The library uses interface-based abstractions to decouple message producers and consumers from the underlying message broker. This allows different messaging technologies to be swapped via plugin-based broker integration. It employs a router-driven dispatch system and middleware-based pipelines to manage cross-cutting
Watermill is a Go framework for building event-driven applications with pub/sub, CQRS, and broker integrations, but it is a library rather than a set of example projects or learning resources demonstrating those patterns.
NSQ is a distributed, brokerless messaging platform designed for high-throughput, fault-tolerant communication. By utilizing a decentralized topology, it eliminates single points of failure and allows for horizontal scaling across clusters. The system organizes message streams into topics and channels, effectively decoupling producers from consumers to support both streaming and job-oriented workloads. The platform distinguishes itself through a lookup-service-based discovery mechanism that enables clients to dynamically locate producers at runtime without requiring centralized coordination.
NSQ is a distributed messaging platform, not an example project or learning resource—it’s the infrastructure you’d use in event-driven systems rather than a reference implementation demonstrating patterns.
PubSubJS is a lightweight JavaScript library that implements the publish-subscribe pattern to manage decoupled communication between different parts of an application. It functions as a dependency-free message broker and event bus, allowing components to exchange data without requiring direct dependencies. The system enables the orchestration of events through named topics, allowing developers to register subscriber callbacks and broadcast messages to all interested listeners. It specifically supports the decoupling of component communication and the notification of state changes across multi
PubSubJS is a lightweight pub/sub library, not a set of example projects or reference implementations; it provides the messaging building block but lacks the real-world microservices context, CQRS, and Kafka/RabbitMQ integration this search for learning resources expects.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| eduardopires/equinoxproject | 6.8K | C# | MIT | |
| mikaelemmmm/go-zero-looklook | 5.2K | Go | MIT | |
| 6.3K |
| Go |
| MIT |
| docshome/microservices | 5.2K | — | — |
| ddd-by-examples/library | 5.8K | Java | MIT |
| codingdocs/springboot-guide | 5.3K | Java | Apache-2.0 |
| yudaocode/springboot-labs | 20.1K | Java | — |
| cer/event-sourcing-examples | 3.2K | JavaScript | NOASSERTION |
| codelytv/typescript-ddd-example | 1.5K | TypeScript | — |
| threedotslabs/watermill | 9.8K | Go | MIT |