# bitloops/ddd-hexagonal-cqrs-es-eda

Complete working example of using Domain Driven Design (DDD), Hexagonal Architecture, CQRS, Event Sourcing (ES), Event Driven Architecture (EDA), Behaviour Driven Development (BDD) using TypeScript and NestJS. Like what you see? Don't forget to star! ⭐ ^^^

Repository: https://github.com/bitloops/ddd-hexagonal-cqrs-es-eda
Canonical: https://ross.abutalabs.com/products/ddd-hexagonal-cqrs-es-eda
Homepage: https://bitloops.com
Language: TypeScript
License: MIT
License Family: permissive
Topics: bdd, cqrs, ddd, domain-driven-design, event-sourcing, hexagonal-architecture, jaeger, mongodb, nats, nestjs, nodejs, postgres, prometheus, realtime, typescript
Last push: 2026-08-02T08:50:26+00:00

## Health v2 (maintenance only)
Score: 94/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 95, release rhythm 96, longevity 89
- inputs: {"age_days": 1247, "days_push": 31, "days_rel": 31, "gap_med": 1, "n_releases_24m": 4}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1437, forks 123 (observed 2026-08-28T04:04:43.787784+00:00)

## What it is
A complete working example application demonstrating Domain Driven Design, Hexagonal Architecture, CQRS, Event Sourcing, Event Driven Architecture, and BDD using TypeScript and NestJS. It serves as a reference implementation for learning advanced backend software architecture patterns with a production-like codebase.

## Use cases
- learn domain driven design with a real codebase
- example of CQRS and event sourcing in TypeScript
- hexagonal architecture reference implementation
- how to structure a NestJS backend with DDD
- event driven architecture example with NATS
- behavior driven development example in Node.js
- production-ready backend architecture template
- learn event storming and software design patterns

## When to choose
- you want a comprehensive, working reference for DDD, CQRS, and event sourcing in TypeScript
- you are learning advanced backend architecture patterns with NestJS
- you need a realistic example of event-driven microservices with monitoring and tracing

## When to avoid
- you need a lightweight starter template rather than a full architectural example
- your stack is not Node.js/TypeScript or you do not use NestJS
- you want a production framework or library to install rather than educational example code

## Facets
- artifact type: learning-resource
- maturity: active
- function: web-framework, api-framework, message-queue, orm, testing, monitoring, auth, logging
- domain: backend, web-development, developer-tools, tutorials, apis, microservices
- platform: cross-platform
- tags: ddd, hexagonal-architecture, cqrs, event-sourcing, event-driven-architecture, bdd, nestjs, reference-implementation, todo-app, keycloak, mongodb, postgres, nats, jaeger, prometheus, nodejs, typescript, docker

## Member repositories
- bitloops/ddd-hexagonal-cqrs-es-eda (main) score 94

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:43.787784+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:36:43.202980+00:00, confidence not recorded.
  - readme: https://github.com/bitloops/ddd-hexagonal-cqrs-es-eda (fetched 2026-08-28T04:04:43.787784+00:00, sha 5726b4bf0c65)
  - homepage: https://bitloops.com (fetched 2026-08-29T11:47:49.224253+00:00, sha e8fb5d1fd3b2)
  - site_page: https://bitloops.com/about-us (fetched 2026-08-29T11:47:49.233328+00:00, sha 4c136e0446a0)
  - site_page: https://bitloops.com/docs (fetched 2026-08-29T11:47:49.235111+00:00, sha 5829eeaf2cad)
  - site_page: https://bitloops.com/docs/getting-started/quickstart (fetched 2026-08-29T11:47:49.236744+00:00, sha 6a22a9122dc5)
- Data as of 2026-08-30T08:39:29.467469+00:00.
