Docs

Estructura del recurso

vargas_mdt/
├── fxmanifest.lua           # Manifiesto FiveM Cerulean con módulos y dependencias
├── config.lua               # Configuración central (trabajos, teclas, rangos, webhooks, debug)
├── README.md                # Documentación técnica
├── CHANGELOG.md             # Historial de cambios y optimizaciones
│
├── shared/                  # Lógica y utilidades compartidas
│   ├── logger.lua           # Logger con niveles (DEBUG, INFO, WARN, ERROR)
│   ├── validation.lua       # Saneamiento y validación estricta de datos
│   ├── enums.lua            # Constantes y enumeradores
│   ├── locales.lua          # Sistema de internacionalización
│   └── utils.lua            # Helpers y matemáticas
│
├── bridge/                  # Adaptadores de framework desacoplados
│   ├── client.lua           # API unificada de cliente
│   ├── server.lua           # API unificada de servidor
│   ├── esx.lua              # Integración nativa con ESX Legacy
│   └── qb.lua               # Integración nativa con QBCore
│
├── client/                  # Controladores del cliente (0.00ms idle)
│   ├── state.lua            # Caché reactivo de trabajo, departamento y servicio
│   ├── utils.lua            # Raycasting y dibujo 3D
│   ├── main.lua             # Registro de keybinds (F5) y tracking de GPS condicional
│   ├── tablet.lua           # NUI Callbacks y sincronización con React
│   ├── dispatch.lua         # Detección de proximidad a la escena (solo durante llamada)
│   ├── alerts.lua           # HUD de alertas emergentes con teclado (ENTER/BACKSPACE)
│   ├── blips.lua            # Blips tácticos y radar con limpieza reactiva
│   ├── objects.lua          # Colocador 3D de objetos y pinchos con arranque dinámico
│   ├── scenes.lua           # Perímetros de escena táctica renderizados condicionalmente
│   └── interactions.lua     # Integración con ox_target y qb-target
│
├── server/                  # Controladores del servidor y base de datos
│   ├── database.lua         # Capa de abstracción oxmysql
│   ├── ratelimit.lua        # Limitador de tasa anti-spam
│   ├── cache.lua            # Caché en memoria con TTL e invalidación
│   ├── permissions.lua      # Control granular de permisos y auditoría Discord
│   ├── dispatch.lua         # Despacho de alertas, deltas de unidades y GPS
│   ├── citizens.lua         # Búsqueda y expedientes médicos/judiciales
│   ├── vehicles.lua         # Registro automotor y vehículos robados
│   ├── reports.lua          # Informes sancionadores con multas y cárcel
│   ├── incidents.lua        # Casos e incidentes multidimensionales
│   ├── evidence.lua         # Almacén de evidencias y balística
│   ├── bolos.lua            # Órdenes de búsqueda BOLO con caché
│   ├── scenes.lua           # Almacén de perímetros y objetos colocados
│   └── main.lua             # Arranque, verificación y estadísticas de dashboard
│
├── sql/
│   └── install.sql          # Estructura de base de datos indexada
│
└── web/                     # Interfaz NUI React 18 + TypeScript + Vite + TailwindCSS
    ├── src/                 # Código fuente de la tablet
    └── dist/                # Bundle compilado de producción