搜索

PythonReactSEOPDF
GitHub Skill

overview-repository-structure

Repository structure overview - Solution organization (Src, Test, Docker, Docs), project dependencies, folder conventions, and codebase navigation. Start here for understanding the repository layout. Keywords: repository-structure, solution-organization, project-organization, codebase-navigation, folder-structure, project-dependencies

duranserkan☆ 14 仓库 Stars1 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

DRN-Project Repository Structure

Complete reference for repository organization, solution structure, and project dependencies.

When to Apply

  • Navigating the codebase for the first time
  • Understanding project relationships and dependencies
  • Locating specific functionality across the repository
  • Setting up development environment

Repository Layout (Physical)

The physical directory structure separates source code, documentation, and agent resources.

DRN-Project/
├── .agent/                    # Agent skills and workflows
│   ├── rules/                 # DiSCOS rules
│   └── skills/                # Expert skills (this directory)
├── .github/workflows/         # CI/CD workflows
├── DiSCOS/                    # Distinguished Secure Cognitive OS documentation
├── Docker/                    # Container definitions (Postgre, Graylog, RabbitMQ)
│
├── DRN.Framework.*/           # Framework packages (Physical folders in root)
├── DRN.Nexus.*/               # Nexus microservice hub (Physical folders in root)
├── Sample.*/                  # Sample DDD application (Physical folders in root)
├── DRN.Test.*/                # Test projects (Physical folders in root)
│
├── DRN.slnx                   # Solution file (defines logical structure)
├── docker-compose.yml         # Global compose for all services
└── README.md                  # Project documentation

Solution Structure (Logical)

The .slnx solution file organizes the flat physical project list into logical Solution Folders for better navigation in IDEs.

Solution Folder Purpose Contains Projects
/Src/Framework/ Reusable packages DRN.Framework.* (SharedKernel, Utils, Hosting, etc.)
/Src/Nexus/ Service mesh hub DRN.Nexus.* (Application, Domain, Hosted, etc.)
/Src/Sample/ Reference implementation Sample.* (Application, Domain, Hosted, etc.)
/Test/ All test projects DRN.Test.* (Unit, Integration, Performance)
/Docker/ Infrastructure Compose files for Postgre, Graylog, RabbitMQ
/Docs/ Documentation LICENSE, README, ROADMAP, SECURITY
/Items/ Configuration .gitignore, .agent rules, GitHub workflows

Framework Package Hierarchy

graph TD
    SK[DRN.Framework.SharedKernel] --> U[DRN.Framework.Utils]
    U --> H[DRN.Framework.Hosting]
    U --> EF[DRN.Framework.EntityFramework]
    H --> T[DRN.Framework.Testing]
    EF --> T
    U --> J[DRN.Framework.Jobs]
    U --> MT[DRN.Framework.MassTransit]
    
    style SK fill:#e1f5fe
    style U fill:#b3e5fc
    style H fill:#4fc3f7
    style EF fill:#4fc3f7
    style T fill:#0288d1

Dependency Order (bottom to top):

  1. SharedKernel - No external DRN dependencies (lightweight)
  2. Utils - Depends on SharedKernel
  3. Hosting / EntityFramework - Depend on Utils
  4. Testing - Depends on Hosting + EntityFramework

Sample Application Tiers

Layer Project Responsibility
Presentation Sample.Hosted Razor Pages, Controllers, API, Frontend build
Application Sample.Application Use cases, orchestration, DTOs
Domain Sample.Domain Entities, Aggregates, Domain Events
Infrastructure Sample.Infra DbContexts, Repositories, External services
Contract Sample.Contract Shared DTOs, Events, API contracts
Utils Sample.Utils Cross-cutting utilities

See: overview-ddd-architecture.md


Project Dependencies (Sample)

Sample.Hosted
├── Sample.Application
├── Sample.Infra
│   ├── Sample.Domain (entities, aggregates)
│   └── Sample.Contract (DTOs, events)
└── DRN.Framework.Hosting
    └── DRN.Framework.Utils
        └── DRN.Framework.SharedKernel

Key Configuration Files

File Purpose Location
appsettings.json Runtime configuration */appsettings.json
vite.config.js Frontend build Sample.Hosted/
tsconfig.json TypeScript config Sample.Hosted/
docker-compose.yml Local dependencies Root + Docker/*/
DRN.slnx Solution definition Root

CI/CD Workflows

Workflow Trigger Actions
develop.yml Push to develop Build, Test, SonarCloud
master.yml Push to master Build, Test, SonarCloud
release.yml Tag push Build, Test, NuGet publish, Docker push
release-preview.yml Preview tag Preview NuGet publish

Common Development Commands

# Build solution
dotnet build DRN.slnx

# Run tests
dotnet test DRN.slnx

# Run Sample.Hosted
dotnet run --project Sample.Hosted

# Start dependencies
docker compose -f Docker/Postgre/docker-compose.yml up -d

# Frontend build (Sample.Hosted)
cd Sample.Hosted && npm run build

Related Skills


使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-03-11
索引更新时间
2026-03-11
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!