System
apps/system/modules
Módulos de system
Los módulos agrupan código específico de la app por dominio. Antes de crear un módulo nuevo, comprobar si la necesidad pertenece a un package compartido.
| Módulo | Responsabilidad |
|---|---|
auth | Sesión, login, registro, verificación, invitaciones y onboarding |
users | Listado, invitación, eliminación y transferencia de usuarios |
estates | Listado, creación, edición, detalle y transferencia de estates |
works | Obras, estados, personal y documentación |
infractions | Listado, detalle, evidencia y resolución de infracciones |
access | Registro, filtros e historial de accesos |
configuration | Configuraciones, documentación y notificaciones |
information | Contactos, normas del barrio, preguntas frecuentes y flujo de obras |
shared | Hooks, tipos, utilidades y componentes transversales de system |
El manejo de errores y el flujo de datos del módulo Information se documentan en
information/README.md.
Estructura recomendada
text
modules/<domain>/
├── components/
├── hooks/
├── types/
├── constants/
├── utils/
├── mock/
└── README.md
No todas las carpetas son obligatorias. Crear solo las necesarias. Los mocks no son una fuente de datos de producción.
Convenciones
- Componentes específicos del módulo viven en
components/. - Lógica interactiva y side effects viven en
hooks/. - Props y estados visuales pueden definirse en
types/. - Entidades persistidas y payloads deben usar
@repo/schemas. - Constantes exclusivas del módulo viven en
constants/; las globales van a@repo/constants. - Tests se ubican junto al archivo probado.