ADR-007 — Frontend architecture patterns

Architecture decision record — status: Accepted.

Source: docs/adr/ADR-007-frontend-architecture.md

ADR-007: Frontend architecture patterns

Estado

Accepted — 2026-08-23

Contexto

Un único cliente web (panel finance + auth). ADR-011 pide organización por capacidad.

Decisión

  • Feature-based bajo apps/web/features/<capability>/.
  • Container / presentational (datos vs pintura).
  • TanStack Query para server state; un API client compartido.
  • Zod en la frontera de formularios y respuestas.
  • Design system en packages/ui (átomos); features no clonan chrome.

Features V1 alineadas a DOC-003: auth, customers, invoices, inbox, sequences, promises, disputes, tasks, dashboard, settings.

Alternativas

Agrupar solo por tipo técnico (components/, hooks/ globales) — se descarta; no escala ni es coherente con IVPrior.

Consecuencias

  • Specs UX S-xxx mapean 1:1 a features cuando sea posible.
  • Slices solo-API se nombran *-api / *-skeleton (constitution UX).