# {{PROJECT_NAME}} - Flutter

> Generado: {{GENERATION_DATE}} | Claude Craft v{{VERSION}}

## Que (Stack y Estructura)

**Stack**: {{TECH_STACK}}
**State Management**: {{STATE_MANAGEMENT_PATTERN}}

### Estructura del proyecto
```
lib/
├── core/                 # Funcionalidades comunes
├── features/             # Features de negocio
│   └── [feature_name]/
│       ├── data/         # Models, DataSources, Repositories
│       ├── domain/       # Entities, UseCases, Interfaces
│       └── presentation/ # BLoC, Pages, Widgets
└── main.dart
```

## Por que (Proposito y Organizacion)

### Arquitectura: Clean Architecture
- **Presentation** -> **Domain** <- **Data**
- Domain sin dependencias externas
- Inversion de dependencias via interfaces

Ver `rules/02-architecture.md` para patrones detallados.

### Reglas criticas

| Regla | Descripcion |
|-------|-------------|
| Analisis primero | OBLIGATORIO antes de cualquier codigo |
| `const` widgets | Usar `const` siempre que sea posible |
| Nomenclatura | Archivos: snake_case, Clases: PascalCase |
| Cobertura | Domain 95%, Data 85%, Presentation 70% |

## Como (Comandos y Flujos de trabajo)

### Comandos de desarrollo
```bash
make setup      # Instalar dependencias
make run        # Ejecutar app
make generate   # Generar codigo (freezed, json_serializable)
```

### Pipeline de calidad
```bash
make analyze    # flutter analyze --fatal-infos
make format     # dart format
make test       # flutter test
make quality    # Todas las verificaciones
```

### Flujo de desarrollo
1. **Analizar** - `rules/01-workflow-analysis.md`
2. **TDD** - Tests en paralelo con codigo
3. **Calidad** - `make quality` antes de commit
4. **Commit** - Conventional Commits

## Referencias

| Contexto | Archivo |
|----------|---------|
| Antes de modificar | `rules/01-workflow-analysis.md` |
| Arquitectura | `rules/02-architecture.md` |
| Estandares codigo | `rules/03-coding-standards.md` |
| SOLID | `rules/04-solid-principles.md` |
| Tests | `rules/07-testing.md` |
| Seguridad | `rules/11-security.md` |
| Performance | `rules/12-performance.md` |
| State Management | `rules/13-state-management.md` |

<!-- PROJECT-SPECIFIC-START -->
## Especificidades del proyecto

<!-- Agregar configuracion especifica del proyecto aqui -->

<!-- PROJECT-SPECIFIC-END -->
