Modular first, distributed when necessary
Define service boundaries before deployment boundaries become the expensive part of the system.
ADNC
Open-source reference architecture
ADNC is a pragmatic .NET 8 framework and working reference implementation for modular monoliths, distributed applications, and microservice systems.
Why ADNC
Define service boundaries before deployment boundaries become the expensive part of the system.
Centralize cross-cutting concerns such as authentication, cache, repositories, remote calls, events, logs, and health checks.
Keep domain decisions inside service-specific application and domain layers instead of hiding them in a platform.
Architecture at a glance
Ocelot routing, authentication integration, Consul provider, and resilience policies.
Reusable Consul, Redis, repository, event bus, ID generation, helper, and core packages.
Common application, domain, repository, remote-call, and Web API building blocks.
Business services that show layered, compact, and DDD-oriented structures side by side.
Core capabilities
Demo services
Users, roles, permissions, dictionaries, and configuration.
Identity and system administrationLogs, audits, and operations management.
Audit trail and operations supportCustomer management in a compact single-project service.
Minimal service structureOrder management with explicit domain boundaries.
Domain-oriented order flowWarehouse management with a domain-oriented service shape.
Inventory and warehouse domainStart with the reference implementation