Skip to main content

LMS Project Structure

Summary

Audience

Developers, QA, architecture, security, and maintainers.

Reference Content

AreaActual contentsSeparation
ApiEndpoint registration, endpoint-local helpers, input/output/report DTOsFolder/namespace convention
ApplicationTenant context, validation exception, Document port/options/adapterFolder/namespace convention; adapter is colocated
DomainEntities, value records, enums, evidence/processed typesSingle domain file
InfrastructureDbContext/configuration, outbox mapping/store, evidence helpers, migrations, seed, design factoryFolder/namespace convention
Project rootBootstrap, project file, runtime settings, container definitionSingle web project
Shared Kernel/contractsSeparate referenced projectsAssembly references

No Training Messaging, Compatibility, Backfill, or test project/folder exists. API, Application, Domain, and Infrastructure compile together, so dependency direction is not enforced by project references.

Requires confirmation

Fine-grained authorization, production ownership, operational governance, and future architectural boundaries require confirmation where not implemented.

Source References

  • microservices/src/training-service/training-service.csproj
  • microservices/src/training-service/Program.cs
  • microservices/src/training-service/Api/TrainingEndpoints.cs
  • microservices/src/training-service/Domain/TrainingEntities.cs
  • microservices/src/training-service/Application/Common.cs
  • microservices/src/training-service/Infrastructure/TrainingDbContext.cs

See Also

Keywords

  • LMS technical architecture
  • Source-backed implementation

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-17
  • Review cycle: Quarterly