# Reference Architecture Templates

This directory contains reference architecture templates for common architectural patterns.

## Available Templates

| Template                                    | Pattern                    | Best For                                 |
| ------------------------------------------- | -------------------------- | ---------------------------------------- |
| [clean-architecture](./clean-architecture/) | Clean Architecture         | Enterprise applications, complex domains |
| [hexagonal](./hexagonal/)                   | Hexagonal/Ports & Adapters | Highly testable systems                  |
| [event-driven](./event-driven/)             | Event-Driven Architecture  | Microservices, distributed systems       |
| [layered](./layered/)                       | Traditional Layered        | Simple CRUD applications                 |
| [modular-monolith](./modular-monolith/)     | Modular Monolith           | Scalable monoliths                       |

## Usage

Use `itda init --template <template-name>` to initialize a project with a reference architecture:

```bash
# Clean Architecture template
itda init --template clean-architecture

# Hexagonal Architecture template
itda init --template hexagonal

# Event-Driven Architecture template
itda init --template event-driven
```

## Template Structure

Each template provides:

- Directory structure
- Layer definitions
- Sample code organization
- Recommended patterns

---

_Generated by ITDA SDD_
