Skip to main content

Punto de venta offline-first que sigue vendiendo sin internet

MobileReact NativeExpoNestJSPostgreSQL
Sincronización offline-first para operación sin interrupciones

El Desafío

  • Operación offline completa: El sistema debe vender sin conexión a internet; las transacciones se encolan localmente
  • Sincronización al reconectar: Reconciliación automática con el servidor cuando vuelve la conectividad, sin pérdida de datos
  • Arquitectura feature-sliced: Separación de responsabilidades en capas: ruta → pantalla → hook → servicio para máxima mantenibilidad
  • UI móvil consistente: Tamagui + NativeWind para componentes de UI móvil eficientes y responsivos

Arquitectura de la Solución

RouteFeature-slicedDomainSyncStyledExpo RouterScreenDomain HookServiceOffline Sync LayerNestJS APIPostgreSQLTamagui + NativeWind
System architecture diagram showing nodes and connections

POS App

React Native + Expo (Expo Router). Arquitectura feature-sliced: ruta → pantalla → hook → servicio. NativeWind para estilos responsivos.

Capa Offline

Capa de sincronización offline que encola operaciones sin conexión y reconcilia con el servidor cuando vuelve la conectividad.

Estilos

Sistema de componentes Tamagui + clases utilitarias NativeWind para UI móvil consistente y eficiente.

Backend

API NestJS con PostgreSQL. Gestiona reconciliación de sincronización, resolución de conflictos y garantías transaccionales.

Resultados

Offline-first

Operación completa sin internet

Auto-sync

Reconcilia con el servidor al reconectarse

FSD

Arquitectura feature-sliced

POS - Punto de Venta Offline-First | Joel May