rick-dev-creator/modularmonolith
62.5
Weak · 3 August 2026
223
lines of production code
C#
primary language
3
measurements over time
What this system is
This system provides a .NET 8.0-based modular monolith architecture, offering standardized project templates for both monolithic and modular application structures. It enforces Clean Architecture principles with isolated modules that register themselves via a pluggable \IModuleInstaller\ interface. The framework integrates key libraries like MediatR and FastEndpoints, supported by centralized package management for consistent dependency resolution.
Features
Added modular monolith and module project templates
Introduced new project templates for generating a modular monolith application and individual modules, each structured with Clean Architecture principles. The modular monolith template includes a core server project that uses reflection to automatically discover and install modules via the \IModuleInstaller\ interface, enabling a pluggable architecture. The module template provides a standardized structure for building isolated features, including application logic, infrastructure handlers, endpoints, and contracts, all wired together through a \ModuleInstaller\ that registers services and configures the host.
Module, Monolith · high confidence
Dependencies
Added .NET 8.0 project templates with centralized package management
Introduced new project templates for both the monolith and modular architectures, all targeting .NET 8.0. These templates establish a centralized package versioning system via Directory.Packages.props and define dependencies for key libraries including FastEndpoints, MediatR, FluentValidation, and Swashbuckle. The modular template specifically includes the Ardalis.Result package, while the monolith template incorporates Scrutor for assembly scanning.
(dependencies) · high 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
Score
- CAI 28 → 62 (+34.4)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.19) — scores are not directly comparable.
Lenses
- Code Health 89 (new)
- Architecture 85 (new)
- Maturity 13 → 69 (+55.7)
- Readiness 15 → 57 (+41.3)
- Security 100 → 58 (-42.1)
Resolved (5)
- Dependency hygiene not measured — no supported dependency manifest was read
- No automated tests
- No exposed public API
- bus factor not measured — no commits were sampled
- single-commit history — no usable git history window to measure hotspots
New (16)
- Duplicate 'Text' property in both Request (Query) and Response (DTO) types. While technically distinct, having a 'Text' field in both the input and output of a 'GetMessage' operation suggests a potential design flaw or unnecessary duplication. If 'Text' is the sole differentiator, the Query should likely not contain it, or the Response should not mirror the Request's structure unless there is a specific reason (e.g., echo-back). More importantly, the naming 'GetMessage' implies a retrieval operation, yet the Query carries the data to be retrieved or the Response carries the data retrieved. This creates ambiguity: is 'Text' the search criterion or the result? This is a semantic inconsistency in the API contract.
- High CVE: System.Text.Json 7.0.3
- Monorepo: only 1 of 3 solutions was scored
- No tests — template/sample
- Off the main sequence: Server.Module1.Contracts
- Thin analysable surface across projects
- XML-doc coverage: Server.CrossCuttingConcerns (Monolith/Server.CrossCuttingConcerns/Server.CrossCuttingConcerns.csproj)
- XML-doc coverage: Server.Module1.Application (Module/Server.Module1.Application/Server.Module1.Application.csproj)
- XML-doc coverage: Server.Module1.Contracts (Module/Server.Module1.Contracts/Server.Module1.Contracts.csproj)
- XML-doc coverage: Server.Module1.Domain (Module/Server.Module1.Domain/Server.Module1.Domain.csproj)
- XML-doc coverage: Server.Module1.EndPoints (Module/Server.Module1.EndPoints/Server.Module1.EndPoints.csproj)
- XML-doc coverage: Server.Module1.Infrastructure (Module/Server.Module1.Infrastructure/Server.Module1.Infrastructure.csproj)
- XML-doc coverage: Server.Module1.Module (Module/Server.Module1.Module/Server.Module1.Module.csproj)
- complexity unreadable for .cs — churn × complexity hotspots could not be measured
- git history depth insufficient
- single-maintainer — knowledge-concentration (bus factor) risk
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
rick-dev-creator/modularmonolith 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 3 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 47388b30c3c87eccccc50463696e2f233838a762 — the exact code this score is about.
- Scored under rubric-2026.08.19 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer latest.