Arquitectura del sistema
El sistema sigue una arquitectura de tres capas separando claramente la presentación, lógica de negocio y persistencia de datos.Componentes principales
Frontend - Angular
- Framework: Angular 20.3.0
- UI: Angular Material 20.2.11
- Cliente HTTP: Axios 1.13.2
- Estado: RxJS 7.8.0
- Lenguaje: TypeScript 5.9.2
Backend - Django
- Framework: Django 6.0.2
- API REST: Django REST Framework 3.16.1
- Autenticación: JWT (djangorestframework_simplejwt 5.5.1)
- Auditoría: django-simple-history 3.11.0
- CORS: django-cors-headers 4.9.0
Base de datos - PostgreSQL
- Tablas principales de inventario
- Tablas de catálogos (ubicaciones, estados, etc.)
- Tablas de auditoría generadas por django-simple-history
- Tabla de usuarios personalizada
Flujo de datos
Seguridad
- Autenticación: JWT con refresh tokens
- Autorización: RBAC con 4 roles
- HTTPS: En producción
- CORS: Configurado para dominios permitidos
- Validación: En frontend y backend
Escalabilidad
- Horizontal: Múltiples instancias de Django con Gunicorn
- Caché: Redis (opcional)
- CDN: Para archivos estáticos del frontend
- Balanceador: Nginx o similar
Recursos
Backend
Arquitectura del backend Django
Frontend
Arquitectura del frontend Angular
Base de datos
Esquema de la base de datos