# Project Context - {{PROJECT_NAME}}

## Overview

- **Project Name**: {{PROJECT_NAME}}
- **Technology Stack**: {{TECH_STACK}}
- **Framework**: .NET {{DOTNET_VERSION}}
- **Architecture**: Clean Architecture with CQRS

## Project Structure

```
{{PROJECT_NAME}}/
├── src/
│   ├── {{PROJECT_NAME}}.Domain/
│   │   ├── Entities/
│   │   ├── ValueObjects/
│   │   ├── Events/
│   │   ├── Exceptions/
│   │   └── Interfaces/
│   │
│   ├── {{PROJECT_NAME}}.Application/
│   │   ├── Common/
│   │   │   ├── Behaviors/
│   │   │   ├── Interfaces/
│   │   │   ├── Mappings/
│   │   │   └── Models/
│   │   └── Features/
│   │
│   ├── {{PROJECT_NAME}}.Infrastructure/
│   │   ├── Data/
│   │   ├── Identity/
│   │   └── Services/
│   │
│   └── {{PROJECT_NAME}}.WebAPI/
│       ├── Controllers/ or Endpoints/
│       ├── Middleware/
│       └── Program.cs
│
├── tests/
│   ├── {{PROJECT_NAME}}.Domain.UnitTests/
│   ├── {{PROJECT_NAME}}.Application.UnitTests/
│   ├── {{PROJECT_NAME}}.Infrastructure.IntegrationTests/
│   └── {{PROJECT_NAME}}.WebAPI.FunctionalTests/
│
└── docker-compose.yml
```

## Domain Entities

<!-- List your main domain entities here -->
- Entity1
- Entity2

## External Services

<!-- List external service integrations -->
- Database: PostgreSQL / SQL Server
- Cache: Redis
- Message Queue: RabbitMQ

## Environment Configuration

```json
{
  "ConnectionStrings": {
    "DefaultConnection": "Host=localhost;Database={{PROJECT_NAME}};Username=...;Password=..."
  },
  "Jwt": {
    "Issuer": "{{PROJECT_NAME}}",
    "Audience": "{{PROJECT_NAME}}-api"
  }
}
```

## Development Commands

```bash
# Build
dotnet build

# Run tests
dotnet test

# Run API
dotnet run --project src/{{PROJECT_NAME}}.WebAPI

# Add migration
dotnet ef migrations add MigrationName --project src/{{PROJECT_NAME}}.Infrastructure --startup-project src/{{PROJECT_NAME}}.WebAPI

# Update database
dotnet ef database update --project src/{{PROJECT_NAME}}.Infrastructure --startup-project src/{{PROJECT_NAME}}.WebAPI
```

## Team Conventions

<!-- Add project-specific conventions here -->
- Branch naming: feature/, bugfix/, hotfix/
- Commit format: Conventional Commits
- PR review required before merge
