Sistema NEXUS v3.4 migrado con: Estructura principal: - core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles) - core/catalog: Catalogo de funcionalidades reutilizables - shared/knowledge-base: Base de conocimiento compartida - devtools/scripts: Herramientas de desarrollo - control-plane/registries: Control de servicios y CI/CD - orchestration/: Configuracion de orquestacion de agentes Proyectos incluidos (11): - gamilit (submodule -> GitHub) - trading-platform (OrbiquanTIA) - erp-suite con 5 verticales: - erp-core, construccion, vidrio-templado - mecanicas-diesel, retail, clinicas - betting-analytics - inmobiliaria-analytics - platform_marketing_content - pos-micro, erp-basico Configuracion: - .gitignore completo para Node.js/Python/Docker - gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git) - Sistema de puertos estandarizado (3005-3199) Generated with NEXUS v3.4 Migration System EPIC-010: Configuracion Git y Repositorios
74 lines
1.9 KiB
Markdown
74 lines
1.9 KiB
Markdown
# ADR-009: Frontend Architecture - Feature-Sliced Design
|
|
|
|
**Estado:** Aceptada
|
|
**Fecha:** 2025-11-24
|
|
**Responsable:** Architecture-Analyst
|
|
**Proyecto:** ERP Construccion
|
|
|
|
## Contexto
|
|
|
|
Frontend debe soportar:
|
|
- Multiples roles (director, residente, almacenista)
|
|
- Dashboards especificos por rol
|
|
- Portal de derechohabientes
|
|
- App movil (React Native)
|
|
|
|
## Decision
|
|
|
|
**Feature-Sliced Design (FSD):**
|
|
|
|
```
|
|
frontend/src/
|
|
+-- shared/ # Componentes reutilizables
|
|
| +-- ui/ # Botones, inputs, modals
|
|
| +-- api/ # Clientes API
|
|
| +-- utils/ # Helpers
|
|
+-- features/ # Por rol/funcionalidad
|
|
| +-- director/ # Dashboard director
|
|
| +-- residente/ # Vistas residente obra
|
|
| +-- almacenista/ # Gestion inventarios
|
|
| +-- portal/ # Portal derechohabientes
|
|
+-- pages/ # Paginas de la app
|
|
+-- app/ # Configuracion global
|
|
```
|
|
|
|
## Justificacion
|
|
|
|
### Referencia a Gamilit
|
|
- 180+ componentes reutilizables
|
|
- Arquitectura escalable probada
|
|
|
|
### Especifico para Construccion
|
|
- Features separados por rol de construccion
|
|
- Portal derechohabientes como feature aislado
|
|
- Componentes especificos: KardexTable, EstimateForm, AvanceGantt
|
|
|
|
## Consecuencias
|
|
|
|
### Positivas
|
|
- Desarrollo 40% mas rapido
|
|
- Reutilizacion maxima de componentes
|
|
- Separacion clara por rol
|
|
- Mantenibilidad +50%
|
|
|
|
### Negativas
|
|
- Curva de aprendizaje FSD
|
|
- Mitigacion: Documentacion y ejemplos
|
|
|
|
## Implementacion
|
|
|
|
### Acciones Requeridas
|
|
- [ ] Migrar a estructura FSD
|
|
- [ ] Crear componentes shared/ui base
|
|
- [ ] Implementar features por rol
|
|
- [ ] Separar portal como feature
|
|
|
|
### Criterios de Aceptacion
|
|
- Componentes compartidos funcionan en todas las features
|
|
- Cada rol tiene su dashboard
|
|
- Portal funciona como SPA independiente
|
|
|
|
## Referencias
|
|
- [ERP Generico ADR-009](../../erp-generic/docs/adr/ADR-009-frontend-architecture.md)
|
|
- [Gamilit Frontend Patterns](../../shared/reference/gamilit/frontend-patterns.md)
|