ADR-011: UI Organization by Capability
Estado
Accepted (seed default) — enmendable; no elige framework UI
Contexto
Las UIs se vuelven difíciles de mantener si todo se organiza solo por tipo técnico, con independencia del toolkit (web, mobile, desktop).
Decisión
- Organizar el código de cliente por capacidad / feature de producto.
- Separar obtención y coordinación de datos de presentación.
- Un acceso uniforme al backend (cliente/API module), no llamados ad-hoc inconsistentes.
- Validación de entrada cercana a la feature.
- Planificar estados de interfaz (loading, vacío, error, éxito) y comportamiento de formularios (error junto al campo, limpiar al corregir, confirmar salida dirty).
Framework, router, state library y layout de carpetas = ADR de UI del proyecto.
Consecuencias
- Portable a web, mobile u otros clientes.
- No implica React, Next, Flutter ni ningún kit concreto.
Ver DOC-010 §2.