rozturac/go-ddd-example
41.5
Weak · 21 September 2026
579
lines of production code
Go
primary language
4
measurements over time
What this system is
Features
Add RabbitMQ-based event dispatching and MongoDB persistence for user operations
The infrastructure layer now introduces a RabbitMQ-backed event dispatcher and a MongoDB-based user repository. The new \common-dependency-injections.go\ and \rabbitmq-event-dispatcher.go\ files wire up a \RabbitMQEventDispatcher\ that publishes domain events to RabbitMQ queues. Simultaneously, \user-repository.go\ and \user-dependency-injections.go\ implement the user repository using MongoDB, enabling the user service to persist user data and dispatch domain events via the new event dispatcher. This change adds the necessary infrastructure components to support event-driven architecture and database interactions for user-related functionality.
infrastructure · medium confidence
Added MIT license and initial project structure
The repository now includes a LICENSE file specifying the MIT license for the software, and a main.go entry point that initializes the API. The README has been updated to document the folder structure and explain the roles of the API, Application, Domain, and Infrastructure layers, providing users with an overview of the Domain-Driven Design architecture.
(repo-wide) · high confidence
Initial API server setup with user and RabbitMQ integration
The API entry point (api/statup.go) and configuration (api/configs/appconfig.go) have been added, establishing the server on port 8080. This includes a new appsettings.dev.json for environment-specific configuration, a Go config loader using Viper, and the registration of user-related endpoints (CreateGuestUser, GetUserByObjectId) via the Echo framework. Additionally, a RabbitMQ consumer binding is initialized to handle user-created events.
api · medium confidence
Introduce user management service and RabbitMQ consumer
The application layer now includes a new user service that handles user creation (including admin and guest types) and authentication, mapping domain entities to application models. Additionally, a RabbitMQ consumer has been added to process user-created events, integrating with the existing event dispatcher structure.
application · high confidence
Introduces domain models and infrastructure for user management
The domain layer now includes the User aggregate root, which implements domain event tracking and integrates with an encrypted password mechanism that hashes and verifies credentials. The change adds a user repository interface for persistence, defines user roles (Admin, Guest), and establishes a base event dispatcher interface to handle domain events, supporting the overall event-driven architecture.
domain · medium confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 41 → 42 (+0.1)
- Rubric changed (rubric-2026.08.18 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 100 → 100 (+0.0)
- Architecture 69 → 69 (+0.0)
- Maturity 76 → 51 (-24.8)
- Readiness 15 → 20 (+4.4)
- Security 97 → 84 (-13.8)
- Domain Modelling 48 → 56 (+7.9)
- Event-Driven 83 → 83 (+0.0)
Resolved (8)
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- No exposed public API
- No tests — template/sample
- OSV Dependency Vulnerabilities not included (check did not complete)
- early-stage repository — too few commits for a meaningful bus factor
- early-stage repository — too little history to judge knowledge freshness
- git history depth insufficient
- git history depth insufficient
New (19)
- Critical CVE: [GHSA redacted] (go.mod)
- Critical CVE: [GHSA redacted] (go.mod)
- Dependency pinned to a stale untagged commit: github.com/rozturac/rmqc
- Deprecated module: go.mongodb.org/mongo-driver
- Documentation: no contributor guidance (README.md)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- High CVE: [GHSA redacted] (go.mod)
- High CVE: [GHSA redacted] (go.mod)
- High CVE: [GHSA redacted] (go.sum)
- High CVE: [GHSA redacted] (go.sum)
- Medium CVE: [GHSA redacted] (go.mod)
- Medium CVE: [GHSA redacted] (go.mod)
- Medium CVE: GO-2022-0433 (go.mod)
- Medium: security finding (details withheld)
- No ADRs found
- No automated tests
- Outdated: github.com/labstack/echo/v4
- Outdated: github.com/spf13/viper
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
rozturac/go-ddd-example was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 21 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit f8d6cfa879a48934bc2367b0b196e16cf72efc22 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-28e75b8e3254.