81 lines
1.3 KiB
Markdown
81 lines
1.3 KiB
Markdown
# Estándar Corporativo Angular
|
|
|
|
## Framework
|
|
|
|
- Angular 20 o superior.
|
|
- TypeScript estricto.
|
|
- Standalone components preferidos.
|
|
- Angular Material cuando aplique.
|
|
|
|
## Arquitectura
|
|
|
|
Usar arquitectura basada en features:
|
|
|
|
src/app/
|
|
- core/
|
|
- shared/
|
|
- features/
|
|
- layout/
|
|
- environments/
|
|
|
|
## Core
|
|
|
|
Debe contener:
|
|
|
|
- Interceptors.
|
|
- Guards.
|
|
- Servicios globales.
|
|
- Manejo de autenticación.
|
|
- Configuración global.
|
|
|
|
## Shared
|
|
|
|
Debe contener:
|
|
|
|
- Componentes reutilizables.
|
|
- Pipes.
|
|
- Directivas.
|
|
- Modelos compartidos.
|
|
|
|
## Features
|
|
|
|
Cada funcionalidad debe estar aislada:
|
|
|
|
features/orders/
|
|
- components/
|
|
- pages/
|
|
- services/
|
|
- models/
|
|
- routes.ts
|
|
|
|
## Buenas prácticas
|
|
|
|
- No poner lógica de negocio compleja en componentes.
|
|
- Usar servicios para comunicación API.
|
|
- Usar interfaces TypeScript.
|
|
- Usar formularios reactivos.
|
|
- Manejar estados de carga y error.
|
|
- Aplicar lazy loading.
|
|
- Aplicar accesibilidad.
|
|
- Aplicar responsive design.
|
|
|
|
## Seguridad frontend
|
|
|
|
- No guardar tokens sensibles en localStorage si hay alternativa más segura.
|
|
- Sanitizar contenido dinámico.
|
|
- Usar guards.
|
|
- Usar interceptores.
|
|
- No exponer secretos.
|
|
- Validar también en backend.
|
|
|
|
## UX mínima requerida
|
|
|
|
Toda pantalla debe considerar:
|
|
|
|
- Estado vacío.
|
|
- Estado cargando.
|
|
- Estado error.
|
|
- Confirmaciones para acciones destructivas.
|
|
- Mensajes claros.
|
|
- Diseño responsive.
|