Saltar al contenido
CRM Postventa documentación

Arquitectura

Aplicación móvil

Aplicación móvil

Expo SDK 57 · expo-router con rutas tipadas · NativeWind 4 · TanStack Query · graphql-request con codegen · react-native-gifted-charts. 75 archivos, 16 563 líneas. expo-doctor pasa 21 de 21.

Para quién es

No es la web encogida. Es para el asesor y el técnico en campo: una mano, un pulgar, a pleno sol. Las acciones primarias van al alcance del pulgar, no arriba del todo.

Rutas

17, en cinco pestañas: Inicio, Tickets, Chat, Agenda y Clientes, más ajustes y notificaciones.

Lo que sólo existe aquí

  • Cámara y galería para adjuntar evidencia de un reclamo (RF-03).
  • Geolocalización al cerrar una visita técnica (RF-06), en una sola llamada.
  • Notificaciones push con navegación al destino.
  • Caché persistida en AsyncStorage: la app abre con datos aunque no haya red, y avisa de que está sin conexión.

Seguridad

JWT en expo-secure-store, nunca en AsyncStorage. Refresco de un solo vuelo con cola compartida.

Tres trampas que aparecieron aquí

  1. Animated.View de Reanimated ignora className: NativeWind no instrumenta componentes de terceros. Los esqueletos eran invisibles y el Toast se renderizaba en el flujo en vez de flotando.
  2. useAnimatedStyle sólo rastrea valores compartidos en el nivel superior de su clausura. Uno anidado en un objeto hace que el estilo se calcule una vez y nunca más — sin error, sin aviso, sólo una cabecera congelada.
  3. El Modal de React Native monta en un portal fuera del proveedor de tema: en web, toda hoja inferior resolvía sus colores contra :root. Una hoja oscura sobre una app clara.

Ver Bitácora de hallazgos.

Enlazan aquí