Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-ddd
A curated list of Domain-Driven Design (DDD), Command Query Responsibility Segregation (CQRS), Event Sourcing, and Event Storming resources
https://github.com/heynickc/awesome-ddd
Last synced: 4 days ago
JSON representation
-
User Groups
-
Ruby
- Copenhagen
- Cracow
- DDD Taiwan Community
- Denver
- Iran
- Greece
- Hamburg
- London
- Munich
- Nederland
- Norway
- Phoenix
- Warsaw
- Wroclaw
- Russia
- Map of user groups in Europe
- Collective CFP - Submit your talks to all the DDD user groups at once.
- Map of user groups in North America
- Map of user groups in Asia
- Map of user groups in Africa
- Virtual
- Worldwide - Specific about EventStorming
- Austria
- Barcelona
- Belfast
- Belgium
- Berlin
- Cologne/Bonn
- DDD Taiwan Community
- Belgium
- Berlin
- Cracow
- DDD Taiwan Community
- London
- Nederland
- Phoenix
- Warsaw
- Wroclaw
-
-
Libraries and Frameworks
-
JVM
- Apache Isis - Apache Isis is a framework for rapidly developing domain-driven apps in Java.
- Axon Framework - The axon framework is focused on making life easier for developers that want to create a java application based on the CQRS principles.
- Lagom - The Lagom Framework is a microservices framework for the Java Virtual Machine, with APIs for the Java and Scala languages. It includes an Event Sourcing/CQRS based persistence module.
- SeedStack's Business Framework - A set of building blocks that enable you to code business logic according to the Domain-Driven Design (DDD) approach.
- Spine Event Engine - a CQRS/ES framework for building cloud applications. Defines Bounded Contexts with their Commands, Events, and Entity states in Protobuf. The backend logic is written in Java, on top of the Proto-generated code. Client code in Java, JS or Dart communicates with the backend via gRPC.
- Apache Isis - Apache Isis is a framework for rapidly developing domain-driven apps in Java.
- Axon Framework - The axon framework is focused on making life easier for developers that want to create a java application based on the CQRS principles.
- Lagom - The Lagom Framework is a microservices framework for the Java Virtual Machine, with APIs for the Java and Scala languages. It includes an Event Sourcing/CQRS based persistence module.
-
PHP
-
Python
- dry-python - A set of libraries for pluggable business logic components.
- Eventsoucing in Python - Mature, stable Python library for event sourcing and DDD. Supports wide variety of databases, different kinds of orderings of domain events, application level encryption, snapshotting, optimistic concurrency control, and process events. Applications, and entire systems of applications, can be defined independently of infrastructure, and run in different ways (single threaded, multi-threaded, clocked, stepping, multi-process, actor model) and with different infrastructure.
-
Ruby
- Eventide - Event Sourcing and Microservices Stack for Ruby. A set of libraries for writing event driven, autonomous services.
- Rails Event Store - Rails Event Store (RES) is a library for publishing, consuming, storing and retrieving events. It's your best companion for going with an event-driven architecture for your Rails application.
- Eventide - Event Sourcing and Microservices Stack for Ruby. A set of libraries for writing event driven, autonomous services.
- Eventide - Event Sourcing and Microservices Stack for Ruby. A set of libraries for writing event driven, autonomous services.
- Rails Event Store - Rails Event Store (RES) is a library for publishing, consuming, storing and retrieving events. It's your best companion for going with an event-driven architecture for your Rails application.
-
.NET
- Aggregates.NET - .NET event sourced domain driven design model via NServicebus and GetEventStore.
- Akka.NET - Akka.NET is a toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on .NET & Mono.
- ABP - Successor of ASP.NET Boilerplate - ASP.NET Core based application framework to create NLayered, Domain Driven Designed web applications with a microservice focused modular architecture
- ASP.NET Boilerplate - ASP.NET MVC, Web API and ASP.NET Core based application framework to create NLayered, Domain Driven Designed web Applications implementing best practices.
- Cedar.CommandHandling - Middleware to handling commands over HTTP; typically used in CQRS applications.
- Dolittle - Build better applications with Dolittle. An Event Sourced, Microservice platform oriented around DDD with developer productivity and simplicity front and center.
- Edument CQRS and Intentful BDD Testing Starter Kit - Library and tutorial for how to build CQRS/ES applications, including a BDD style testing framework.
- MessageRouter - Described in this video: [The Beating Heart of CQRS, or Actor-Based Message Routing on the CLR](https://vimeo.com/171178586) by Paulmichael Blasucci at the New York F# .NET User Group.
- NetDevPack - A smart set of common classes and implementations to improve your development productivity using .NET (DDD, CQRS, Specification Pattern, MediatR, Validations, Notifications).
- Xer.Cqrs - A simple library for creating applications based on the CQRS pattern with support for attribute routing and hosted handlers. Developed in C# targeting .NET Standard 1.0.
- Aggregates.NET - .NET event sourced domain driven design model via NServicebus and GetEventStore.
- Akka.NET - Akka.NET is a toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on .NET & Mono.
- ABP - Successor of ASP.NET Boilerplate - ASP.NET Core based application framework to create NLayered, Domain Driven Designed web applications with a microservice focused modular architecture
- ASP.NET Boilerplate - ASP.NET MVC, Web API and ASP.NET Core based application framework to create NLayered, Domain Driven Designed web Applications implementing best practices.
- Cirqus - d60 event sourcing + CQRS framework.
- Dolittle - Build better applications with Dolittle. An Event Sourced, Microservice platform oriented around DDD with developer productivity and simplicity front and center.
- Edument CQRS and Intentful BDD Testing Starter Kit - Library and tutorial for how to build CQRS/ES applications, including a BDD style testing framework.
- Projac - Projac is a set of projection libraries that allow you to write projections targetting various backing stores.
- Xer.Cqrs - A simple library for creating applications based on the CQRS pattern with support for attribute routing and hosted handlers. Developed in C# targeting .NET Standard 1.0.
- Dolittle - Build better applications with Dolittle. An Event Sourced, Microservice platform oriented around DDD with developer productivity and simplicity front and center.
-
Databases
- Event Store - The open-source, functional database with Complex Event Processing in JavaScript.
- Eventsourcing - Business event capture and querying framework.
- Serialized - Complete platform for Event Sourcing & CQRS.
- Event Store - The open-source, functional database with Complex Event Processing in JavaScript.
-
JavaScript / TypeScript
- cqrs.js - CQRS implementations in node.js. Includes [node-eventstore](https://github.com/adrai/node-eventstore), [node-cqrs-domain](https://github.com/adrai/node-cqrs-domain), [node-eventdenormalizer](https://github.com/adrai/node-cqrs-eventdenormalizer), [node-cqrs-saga](https://github.com/adrai/node-cqrs-saga).
- wolkenkit - A CQRS, DDD, and event-sourcing framework for JavaScript and Node.js.
- Booster - A CQRS, DDD and event-sourcing open-source framework that leverages all the infrastructure and uses high-level abstractions and conventions. It help users build advanved even-driven applications letting them focus on business logic exclusively.
- cqrs.js - CQRS implementations in node.js. Includes [node-eventstore](https://github.com/adrai/node-eventstore), [node-cqrs-domain](https://github.com/adrai/node-cqrs-domain), [node-eventdenormalizer](https://github.com/adrai/node-cqrs-eventdenormalizer), [node-cqrs-saga](https://github.com/adrai/node-cqrs-saga).
- wolkenkit - A CQRS, DDD, and event-sourcing framework for JavaScript and Node.js.
- Booster - A CQRS, DDD and event-sourcing open-source framework that leverages all the infrastructure and uses high-level abstractions and conventions. It help users build advanved even-driven applications letting them focus on business logic exclusively.
-
Elixir
- Commanded - Command handling middleware for CQRS/ES applications, Pure Functional Data Structures for Aggregates and Process Managers, Point-to-Point message routing, and much more in Elixir (Erlang VM) - All in Actor concurrency model.
- eventstore - CQRS event store using PostgreSQL for persistence.
- Commanded - Command handling middleware for CQRS/ES applications, Pure Functional Data Structures for Aggregates and Process Managers, Point-to-Point message routing, and much more in Elixir (Erlang VM) - All in Actor concurrency model.
- eventstore - CQRS event store using PostgreSQL for persistence.
-
-
Tools
-
Ruby
- Domain Storytelling - a knowledge-crunching technique that helps the people involved to familiarize themselves with the domain and work out a model that expresses their shared understanding. Available as a [print-out template](http://www.domainstorytelling.org/images/DST_Whiteboard-Kit.pdf), as well as open-source online tool, [WPS Modeler](https://www.wps.de/modeler) ([source](https://github.com/wps/domain-story-modeler)).
- Domain Storytelling - a knowledge-crunching technique that helps the people involved to familiarize themselves with the domain and work out a model that expresses their shared understanding. Available as a [print-out template](http://www.domainstorytelling.org/images/DST_Whiteboard-Kit.pdf), as well as open-source online tool, [WPS Modeler](https://www.wps.de/modeler) ([source](https://github.com/wps/domain-story-modeler)).
-
-
Books
- Applying Domain Driven Design with CQRS and Event Sourcing - A walkthrough of using EventStorming and other modeling techniques to build a CQRS and Event Sourcing-based prototype for a fictional business domain.
- Architecture Modernization - Concrete tools, techniques, and processes to align software architecture with your business domains, organizational design, team topologies, and corporate strategy.
- Collaborative Software Design - A practical guide for effectively involving all stakeholders in the design of software.A practical guide for effectively involving all stakeholders in the design of software.
- CQRS - Notes by Mark Nijhof from his experiences learning DDD and CQRS from Greg Young. There is an extensive sample project that accompanies this book.
- Domain-Driven Design: Tackling the Complexity at the Heart of Software - The canonical book that coined the term Domain-Driven Design. Also known as the "Blue Book."
- Domain-Driven Design Distilled - Very good starter book before you read [Implementing Domain-Driven Design](https://vaughnvernon.co/?page_id=168#iddd) or [Domain-Driven Design: Tackling the Complexity at the Heart of Software](https://amzn.com/0321125215).
- Domain-Driven Design in PHP - Real examples written in PHP showcasing DDD Architectural Styles, Tactical Design, and Bounded Context Integration.
- Domain-Driven Rails - Domain-Driven Rails describes 11 techniques (from Bounded Contexts to Event Sourcing) that you can use separately and together in new and old Rails apps to achieve better architecture.
- Domain Modeling Made Functional - Tackle Software Complexity with Domain-Driven Design and F#.
- Domain Specific Languages - Tangentially connected to DDD, describes the importance of the Ubiquitous Language and working together with domain experts, along with lots of technical details.
- Event Sourcing and CQRS with .NET Core and SQL Server - A walkthrough of using Domain-Driven Design with Event Sourcing and CQRS using ASP.NET Core and SQL Server in production.
- Hands-On Domain-Driven Design with .NET Core - Tackling complexity in the heart of software by putting DDD principles into practice by Alexey Zimarev.
- Implementing Domain-Driven Design - Also a canonical book presenting a top-down approach to understanding Domain-Driven Design. Also known as the "Red Book."
- Implementing DDD, CQRS and Event Sourcing - Learn how to implement DDD, CQRS and Event Sourcing. Understand the theory and put it into practice with JavaScript and Node.js.
- Introducing Event Storming: An act of Deliberate Collective Learning - The deepest tutorial and explanation about EventStorming, straight from the inventor.
- Learning Domain-Driven Design: Aligning Software Architecture and Business Strategy - Learn the essential patterns and practices of domain-driven design and how to apply them in your day-to-day work, both in greenfield and brownfield projects.
- Microsoft .NET - Architecting Applications for the Enterprise (2nd Edition) - A software architect’s digest of core practices, pragmatically applied.
- Patterns, Principles, and Practices of Domain-Driven Design (1st Edition) - Methods for managing complex software construction following the practices, principles and patterns of Domain-Driven Design with code examples in C#.
- Secure by Design - Shows how to use Domain-Driven Design to avoid security vulnerabilities.
- Specification by Example - This book distills from the experience of leading teams worldwide effective ways to specify, test, and deliver software in short, iterative delivery cycles. Case studies in this book range from small web startups to large financial institutions, working in many processes including XP, Scrum, and Kanban.
- Versioning in an Event Sourced System - Have you had troubles with versioning an Event Sourced system? Just getting into a new Event Sourced system for the first time? This book is the definitive guide of how to handle versioning over long periods of time.
- What is Domain-Driven Design? - A quick read exploring the core patterns and principles of Domain-Driven Design, as well as strategies for applying DDD in brownfield projects.
- Writing Great Specifications - Writing Great Specifications is an example-rich tutorial that teaches you how to write good Gherkin specification documents that take advantage of Specification by Example's benefits.
- Domain-Driven Rails - Domain-Driven Rails describes 11 techniques (from Bounded Contexts to Event Sourcing) that you can use separately and together in new and old Rails apps to achieve better architecture.
- Domain Modeling Made Functional - Tackle Software Complexity with Domain-Driven Design and F#.
- Domain Specific Languages - Tangentially connected to DDD, describes the importance of the Ubiquitous Language and working together with domain experts, along with lots of technical details.
- What is Domain-Driven Design? - A quick read exploring the core patterns and principles of Domain-Driven Design, as well as strategies for applying DDD in brownfield projects.
- Domain-Driven Rails - Domain-Driven Rails describes 11 techniques (from Bounded Contexts to Event Sourcing) that you can use separately and together in new and old Rails apps to achieve better architecture.
-
Free eBooks
- The Anatomy of Domain-Driven Design - The Infographic - An infographic on the anatomy of Domain-Driven Design.
- Architecting Modern Web Applications with ASP.NET Core and Microsoft Azure - Provides end-to-end guidance on building monolithic web applications using DDD, ASP.NET Core, and Azure. [eShopOnWeb sample](https://github.com/dotnet-architecture/eShopOnWeb)
- Architecture Patterns with Python - A book about Pythonic application architecture patterns for managing complexity.
- CQRS Journey - Exploring CQRS and Event Sourcing.
- Domain-Driven Design: The First 15 Years - To celebrate the anniversary, we've asked prominent authors in the software design world to contribute old and new essays. With contributions by Martin Fowler, James Coplien, Rebecca Wirfs-Brock, Mel Conway, and many more.
- DDD Reference - A summary of the patterns and definitions of DDD.
- Domain Driven Design Quickly - Domain Driven Design Quickly is a short, quick-readable summary and introduction to the fundamentals of DDD.
- Effective Aggregate Design - In this three-part series, Vaughn Vernon walks through some common design pitfalls, discusses the pros and cons of various aggregate modeling choices, and provides rules of thumb to guide modeling of aggregates.
- Getting Started with DDD when Surrounded by Legacy Systems - Describes three strategies for getting started with DDD when you have a big commitment to legacy systems.
- Living Documentation by Design, with Domain-Driven Design - Discover how a Living Documentation can help you in all aspects of your projects, from the business goals to the business domain knowledge, architecture and design, processes and deployment, even if you hate writing documentation.
- .NET Microservices: Architecture for Containerized .NET Applications - An introduction to developing microservices-based applications and managing them using containers. [eShopOnContainers sample](https://github.com/dotnet-architecture/eShopOnContainers)
- The Semantic JavaScript Backend for Event-Driven Development - A 68 pages long free ebook on what DDD, CQRS and event-sourcing are, and how they fit each other.
- DDD Magazine from Xebia #1 - This magazine is packed with visionary and practical insights, based on personal, business, and customer experiences to support you on your DDD journey
- Visual Collaboration Tools - Visual Collaboration Tools is a book for teams building software. It describes tools that help us in our daily job, and also present field stories from different practitioners.
- Architecting Modern Web Applications with ASP.NET Core and Microsoft Azure - Provides end-to-end guidance on building monolithic web applications using DDD, ASP.NET Core, and Azure. [eShopOnWeb sample](https://github.com/dotnet-architecture/eShopOnWeb)
- CQRS Journey - Exploring CQRS and Event Sourcing.
- Domain-Driven Design: The First 15 Years - To celebrate the anniversary, we've asked prominent authors in the software design world to contribute old and new essays. With contributions by Martin Fowler, James Coplien, Rebecca Wirfs-Brock, Mel Conway, and many more.
- DDD Reference - A summary of the patterns and definitions of DDD.
- Domain Driven Design Quickly - Domain Driven Design Quickly is a short, quick-readable summary and introduction to the fundamentals of DDD.
- Effective Aggregate Design - In this three-part series, Vaughn Vernon walks through some common design pitfalls, discusses the pros and cons of various aggregate modeling choices, and provides rules of thumb to guide modeling of aggregates.
- Getting Started with DDD when Surrounded by Legacy Systems - Describes three strategies for getting started with DDD when you have a big commitment to legacy systems.
- .NET Microservices: Architecture for Containerized .NET Applications - An introduction to developing microservices-based applications and managing them using containers. [eShopOnContainers sample](https://github.com/dotnet-architecture/eShopOnContainers)
- Effective Aggregate Design - In this three-part series, Vaughn Vernon walks through some common design pitfalls, discusses the pros and cons of various aggregate modeling choices, and provides rules of thumb to guide modeling of aggregates.
-
Podcasts and Interviews
-
Ruby
- Deeper into DDD on DotNetRocks with David Real - 11 June 2015.
- Thinking in DDD on DotNetRocks with Julie Lerman and Steve Smith - 19 August 2014.
- Eric Evans on Domain Driven Design on DotNetRocks - 10 May 2007.
- Jimmy Nilsson on Domain Driven Design on DotNetRocks - 29 August 2006.
- Being the Worst - 2012 thru 2016.
- Software Engineering Radio Episode 225: Eric Evans on Domain-Driven Design at 10 Years - 13 May 2015.
- Software Engineering Radio Episode 218: Udi Dahan on CQRS (Command Query Responsibility Segregation) - 30 January 2015.
- Deeper into DDD on DotNetRocks with David Real - 11 June 2015.
- Thinking in DDD on DotNetRocks with Julie Lerman and Steve Smith - 19 August 2014.
- Eric Evans on Domain Driven Design on DotNetRocks - 10 May 2007.
- Jimmy Nilsson on Domain Driven Design on DotNetRocks - 29 August 2006.
-
-
Conferences
-
Ruby
- Domain-Driven Design Europe - The Leading DDD conference (online during COVID19)
- Explore DDD - USA
- Kandddinsky - Germany
- DDD Foundations - A curated conference for DDD newcomers
- Domain-Driven Design Europe - The Leading DDD conference (online during COVID19)
- Kandddinsky - Germany
- DDD Foundations - A curated conference for DDD newcomers
-
-
Training Courses
- Advanced Distributed Systems Design - Online training course from Udi Dahan. Udi's live training schedule can be found [here](http://udidahan.com/training/).
- DDD Workshops across Europe and Online - Public Workshops by Eric Evans, Alberto Brandolini, Mathias Verraes, Rebecca Wirfs-Brock, Nick Tune, and many more.
- DDD Workshop by Xebia - public and in-house Domain-driven design workshops from foundation to professional level.
- Distilling Domain-Driven Design - Vaughn Vernon's online training course.
- Domain Language eLearning - Using our video lessons with Eric Evans, author of the original book on Domain-Driven Design (DDD), teach yourself techniques for evolving practical models that improve your software — not just your documents.
- Event Sourcery - Introduction to DDD, CQRS, and Event Sourcing.
- EventStorming Fundamentals Course - eventstorming)) - learn the fundamentals of EventStorming. Everything about EventStorming with examples.
- Greg Young's CQRS Class - These videos include the entirety of Greg Young's DDD, CQRS, and Event Sourcing class.
- Nomad PHP - Introduction to Event Sourcing and CQRS.
- Pluralsight
- Domain-Driven Design Fundamentals - Teaches the fundamentals of Domain-Driven Design (DDD) through a demonstration of customer interactions and a complex demo application, along with advice from Eric Evans.
- Domain-Driven Design in Practice - A descriptive, in-depth walk-through for applying Domain-Driven Design principles in practice.
- Modern Software Architecture: Domain Models, CQRS, and Event Sourcing - This course covers DDD analysis patterns helpful in discovering the top-level architecture of a business domain. Architects and developers will find details of implementation patterns such as Domain Model, CQRS, and Event Sourcing.
- Rails + Domain Driven Design Workshop - Introduction to DDD, fundamentals of CQRS & Event Sourcing for Ruby/Rails developers.
- Reactive Architecture: CQRS and Event Sourcing - This course will discuss the reasons we use CQRS/ES, what benefits it provides us, but also what it will cost us to use. We will see how CQRS/ES can impact the scalability, consistency, and availability of our application.
- Reactive Architecture: Domain Driven Design - Use DDD to decompose a problem domain into manageable parts. Learn how those parts can become the foundation of Reactive Microservices and Reactive Architecture. Free, online, self-paced. Certificate offered upon completion.
- Spatie's Event Sourcing Course - Learn how to build event sourced applications in Laravel using Spatie's event-sourcing package. Has 2 hours of video content and an accompanying ebook.
- Advanced Distributed Systems Design - Online training course from Udi Dahan. Udi's live training schedule can be found [here](http://udidahan.com/training/).
- DDD Workshops across Europe and Online - Public Workshops by Eric Evans, Alberto Brandolini, Mathias Verraes, Rebecca Wirfs-Brock, Nick Tune, and many more.
- DDD Workshop by Xebia - public and in-house Domain-driven design workshops from foundation to professional level.
- Domain Language eLearning - Using our video lessons with Eric Evans, author of the original book on Domain-Driven Design (DDD), teach yourself techniques for evolving practical models that improve your software — not just your documents.
- Event Sourcery - Introduction to DDD, CQRS, and Event Sourcing.
- EventStorming Fundamentals Course - eventstorming)) - learn the fundamentals of EventStorming. Everything about EventStorming with examples.
- Nomad PHP - Introduction to Event Sourcing and CQRS.
- Pluralsight
- Rails + Domain Driven Design Workshop - Introduction to DDD, fundamentals of CQRS & Event Sourcing for Ruby/Rails developers.
-
Video Collections
- DDD Europe - Recordings of talks given at DDD Europe.
- SkillsCasts by SkillsMatter - Searching DDD returns various talks given by Greg Young, Alberto Brandolini, and Dan North, etc.
- Alberto Brandolini: Event Storming - A YouTube collection of talks given by Alberto Brandolini on Event Storming.
- GlobalAppTesting TechTalks - A vimeo channel focused on DDD and CQRS.
- Greg Young - A YouTube collection of various talks given by Greg Young.
- Explore DDD videos - Recordings of the talks given at the Explore DDD conference.
- KanDDDinsky - A YouTube collection of talks given at KanDDDinsky.
- Virtual Domain-driven design - A youtube collection of recorded meetups session from Virtual Domain-driven design
- Visuality DDD webinars - A YouTube collection of webinars focused on DDD in Ruby on Rails
- The Art of Discovering Bounded Contexts by Nick Tune - Session from 2017 DevoxxUK on how to define bounded contexts
- DDD Europe - Recordings of talks given at DDD Europe.
- Explore DDD videos - Recordings of the talks given at the Explore DDD conference.
- KanDDDinsky - A YouTube collection of talks given at KanDDDinsky.
- Virtual Domain-driven design - A youtube collection of recorded meetups session from Virtual Domain-driven design
-
Community Resources
- DDD/CQRS Google Group - An active mailing list and an excellent resource to ask questions and learn fine-grained details about DDD/CQRS.
- DDD-es Google Group - The Google Group to discuss Domain-Driven Design in Spanish.
- DDDinPHP Google Group - The place to discuss Domain-Driven Design, CQRS, Event Sourcing, Model Storming, Hexagonal Architecture, Distributed Systems, Reactive... in the context of PHP.
- EventStorming Google Group - The Google Group to discuss EventStorming.
- DDD in Ruby on Rails - A collection of articles on Domain-Driven Design in Ruby on Rails
- DDD in Ruby subreddit - A subreddit for Ruby developers interested in Domain-Driven Design.
- Domain StoryTelling Discord - A Discord team about Domain StoryTelling (#domain-storytelling channel) by [@hofstef](https://twitter.com/hofstef). The homepage is at [domainstorytelling.org](http://domainstorytelling.org/).
- Software Engineering Stack Exchange - Software Engineering Stack Exchange questions tagged *domain-driven-design*.
- Code Review Stack Exchange - Code Review Stack Exchange questions tagged *domain-driven-design*.
- Stack Overflow - Stack Overflow questions tagged *domain-driven-design*.
- Quora - Questions tagged *domain-driven-design*.
- wolkenkit Slack - A Slack team on DDD, event-sourcing, CQRS and wolkenkit.
- Virtual Domain-driven design community - Online meetups with panel discussions, online collaborations and resource sharing.
- Domain-Driven Design Crew GitHub - GitHub's profile of Domain-Driven Design Crew.
- DDD/CQRS Google Group - An active mailing list and an excellent resource to ask questions and learn fine-grained details about DDD/CQRS.
- Domain StoryTelling Discord - A Discord team about Domain StoryTelling (#domain-storytelling channel) by [@hofstef](https://twitter.com/hofstef). The homepage is at [domainstorytelling.org](http://domainstorytelling.org/).
- Software Engineering Stack Exchange - Software Engineering Stack Exchange questions tagged *domain-driven-design*.
- Code Review Stack Exchange - Code Review Stack Exchange questions tagged *domain-driven-design*.
- Virtual Domain-driven design community - Online meetups with panel discussions, online collaborations and resource sharing.
- DDD North America - Upcoming live training, events, and user groups across North America.
- Domain-driven design heuristics - Domain-Driven Design Heuristics is a community driven site to document and discuss about Design Heuristics.
-
Blogs
- Ardalis.com - Steve Smith. Pluralsight author and author of [DDD Fundamentals](https://www.pluralsight.com/courses/domain-driven-design-fundamentals) course and Microsoft [eShopOnWeb sample app](https://github.com/dotnet-architecture/eShopOnWeb).
- DDD Weekly - Weekly curated links related to DDD/CQRS/ES.
- Daniel Whittaker - Want to learn about CQRS and Event Sourcing? This blog is packed with step-by-step articles to give you a head start.
- Jimmy Bogard - I focus on DDD, distributed systems, and any other acronym-centric design/architecture/methodology.
- CodeBetter - CodeBetter.Com exists in order to help foster awareness of better practices, superior tools, proven methodologies and techniques within the software development community.
- Greg Young - Good Enough Software is By Definition Good Enough.
- InfoQ Blog - Domain-Driven Design Content on InfoQ.
- Dan North - Inventor of Behavior-Driven Design. Blogs and talks about Event Storming also.
- Mike Mogosanu - Maintainable code is a business advantage. Creator of Domain Map: The Domain Modeling Tool - Easy And Powerful Domain Driven Design.
- Christian Posta - Principal Middleware Architect @ Red Hat, open-source enthusiast, committer @ Apache, Cloud, Integration, Kubernetes, Docker, OpenShift, Fabric8.
- Vladimir Khorikov - Pluralsight author. Blogs about software development principles and best practices.
- Derek Comartin - Articles under the category *Domain Driven Design*.
- Alberto Brandolini - Inventor of Event Storming. Asserting that problems cannot be solved with the same mindset that originated them, Alberto switches perspective frequently assuming the architect, mentor, coach, manager or developer point of view.
- Jérémie Chassaing - Various articles about DDD/CQRS. Implemented Greg Young's SimpleCQRS sample in F#.
- Vaughn Vernon - Vaughn Vernon understands the unique demands of software development and the challenges you face as you improve your craft in a fast-paced industry.
- Vladik Khononov - Various DDD-related articles.
- Eventsourcing Publications - Practical event sourcing.
- Jef Claes - Excellent articles and talks on Domain-Driven Design.
- Udi Dahan - From the creator of NServiceBus.
- Chris Patterson - From the creator of the MassTransit distributed application framework.
- Aaron Stannard - From the CTO and co-founder of Petabridge, developers of the Akka.NET Actor Model framework.
- Roger Johansson - Mostly C#, DDD, and Akka.NET.
- Konrad Garus - Ranting and Programming in Java, Clojure, and JavaScript. Articles tagged under *cqrs*.
- Oasis Digital - Content by Oasis Digital tagged under *cqrs*.
- Adaptech - Adaptech Solutions blog. Our founder, Adam Dymitruk, debated the merits of CQRS with Greg Young before Greg coined the term. Adam and business partner Robert Reppel are among the leading practitioners of event-sourced microservices.
- Lev Gorodinski - Several articles about DDD from 2013, which are still relevant.
- Dino Esposito - Software architect, trainer, book author. Author of [Microsoft .NET - Architecting Applications for the Enterprise (2nd Edition)](https://www.amazon.com/Microsoft-NET-Architecting-Applications-Enterprise/dp/0735685355/).
- Dan Bergh Johnsson "Dear Junior" - Domain-Driven Design mixed with security, and agile in general. Written as fictional letters to a younger programmer.
- the native web - DDD & Co. series
- Arkency - Various DDD, CQRS, Event Sourcing related articles from Ruby experts.
- Khalil Stemmler - DDD series introduction and talk about how to implement DDD with TypeScript
- Kenny Baas-Schwegler - DDD, BDD, Socio-technical, EventStorming and continuous delivery blogs.
- João Rosa - Personal blog about Domain-Driven Design, Visual Collaboration, leadership and organisational design. And other things in between. Curator of [Visual Collaboration Tools](https://leanpub.com/visualcollaborationtools/) and host of the [Software Crafts Podcast](https://www.softwarecraftspodcast.com/)
- GlobalAppTesting engineering - GlobalAppTesting's engineering blog with materials on practical DDD and CQRS.
- Daniel Whittaker - Want to learn about CQRS and Event Sourcing? This blog is packed with step-by-step articles to give you a head start.
- Ardalis.com - Steve Smith. Pluralsight author and author of [DDD Fundamentals](https://www.pluralsight.com/courses/domain-driven-design-fundamentals) course and Microsoft [eShopOnWeb sample app](https://github.com/dotnet-architecture/eShopOnWeb).
- DDD Weekly - Weekly curated links related to DDD/CQRS/ES.
- Daniel Whittaker - Want to learn about CQRS and Event Sourcing? This blog is packed with step-by-step articles to give you a head start.
- Greg Young - Good Enough Software is By Definition Good Enough.
- Mike Mogosanu - Maintainable code is a business advantage. Creator of Domain Map: The Domain Modeling Tool - Easy And Powerful Domain Driven Design.
- Christian Posta - Principal Middleware Architect @ Red Hat, open-source enthusiast, committer @ Apache, Cloud, Integration, Kubernetes, Docker, OpenShift, Fabric8.
- Vladimir Khorikov - Pluralsight author. Blogs about software development principles and best practices.
- TechBeacon - Articles on TechBeacon tagged *domain driven design*.
- Derek Comartin - Articles under the category *Domain Driven Design*.
- Alberto Brandolini - Inventor of Event Storming. Asserting that problems cannot be solved with the same mindset that originated them, Alberto switches perspective frequently assuming the architect, mentor, coach, manager or developer point of view.
- Jérémie Chassaing - Various articles about DDD/CQRS. Implemented Greg Young's SimpleCQRS sample in F#.
- Vladik Khononov - Various DDD-related articles.
- Jef Claes - Excellent articles and talks on Domain-Driven Design.
- Udi Dahan - From the creator of NServiceBus.
- Aaron Stannard - From the CTO and co-founder of Petabridge, developers of the Akka.NET Actor Model framework.
- Oasis Digital - Content by Oasis Digital tagged under *cqrs*.
- Dan Bergh Johnsson "Dear Junior" - Domain-Driven Design mixed with security, and agile in general. Written as fictional letters to a younger programmer.
- Kenny Baas-Schwegler - DDD, BDD, Socio-technical, EventStorming and continuous delivery blogs.
- João Rosa - Personal blog about Domain-Driven Design, Visual Collaboration, leadership and organisational design. And other things in between. Curator of [Visual Collaboration Tools](https://leanpub.com/visualcollaborationtools/) and host of the [Software Crafts Podcast](https://www.softwarecraftspodcast.com/)
- GlobalAppTesting engineering - GlobalAppTesting's engineering blog with materials on practical DDD and CQRS.
- Cyrille Martraire - Being so immersed in finance while still in love with programming, I’m naturally a big fan of Domain-Driven Design by Eric Evans, along with TDD, BDD and agile/XP practices.
- Svaťa Šimara - DDD series - language, domain, modeling, infrastructure, implementation in PHP
- Martin Havlišta - DDD, CQRS, TDD blog posts with code samples in C# .NET
- TechBeacon - Articles on TechBeacon tagged *domain driven design*.
-
Sample Projects
-
.NET (C#/F#)
- EISK - .NET CLI and VS Templates with simple use cases to build scalable applications on top of .net core with architectural best practices (DDD, onion architecture etc).
- Example of Domain-Driven Design in F# - Example of Domain Driven Design for the game of checkers. There are two files: a scratch file with a series of designs, and a final version.
- eShopOnContainersDDD - eShop fullstack example featuring catalog, basket, checkout, and order bounded contexts
- Microsoft Patterns and Practices: CQRS Journey Sample Code - Sample code from CQRS Journey.
- TodoMVC-DDD-CQRS-EventSourcing - Implementation of basic Todo app via tastejs/todomvc in C#/Typescript with eventsourcing, cqrs, and domain driven design
-
JavaScript / TypeScript
- wolkenkit Sample Applications - A collection of DDD sample applications, such as TodoMVC, a geocaching app, collaborative boards etc.
- Booster framework examples
-
Haskell
- Eventuria gsd - Haskell todo list reactive application with DDD, CQRS and Event Sourcing, FRP.
-
Idris
- OrderTaking - Dependently typed implementation of the Domain Modeling Made Functional book. An example project how to formalize Bounded Context and Workflow diagram with dependent types. A NodeJS deployable demo.
-
JVM languages
- Event Sourcing and CQRS Sample - Sample event sourced application with Command Query Responsibility Segregation
- Kotlin DDD Sample - Sample DDD/CQRS project written in Kotlin.
- EventStormingWorkshop - Designing Cloud Native Microservices On AWS - A concrete sample to go through EventStorming workshop and implement DDD tactical design pattern in Java, apply AWS cloud native services to build up business Event based Coffeeshop scenario.
-
PHP
- Symfony 5 DDD ES CQRS backend - DDD, CQRS and Event Sourcing app using Symfony and PHP 8.
-
Categories