How brittosmonteiro/inmeta-react-native works
Ordens de Serviço is an offline-first mobile work-order manager. Users list orders, inspect details, create or edit orders, and delete them; mutations choose local storage or the API based on connectivity. The README also documents status changes and automatic sync: reconnect triggers a sync that pushes local changes, fetches remote changes, and applies them locally. The workflow is grounded in the supplied source index and excerpts; some sync and screen details are documented but their full implementations were not excerpted.
Main entry points: [id].tsx Order details · useManageWorkOrder.ts Create and update · workOrdersRepository.ts Order repository · workOrdersService.ts Order API service
Components 25
Mobile experience
- Order list
src/app/index.tsx - Order details
src/app/work-order/details/[id].tsx - Manage order screen
src/app/work-order/manage-work-order/index.tsx - Order form
src/components/manage-work-order/FormCard.tsx - Detail presentation
src/components/details/Card.tsx - Completion display
src/components/details/Completed.tsx
Work-order workflows
- Order state
src/store/workOrderStore.ts - Create and update
src/hooks/work-orders/useManageWorkOrder.ts - Delete order
src/hooks/work-orders/useDeleteWorkOrder.ts - Fetch order
src/hooks/work-orders/useGetWorkOrder.ts - Order types
src/domain/dtos/work-order.ts - Form validation
src/domain/manage-work-order/schema.ts - Connectivity check
src/utils/network/isOnline.ts
Offline data
- Realm database
src/database/index.ts - Order repository
src/database/repositories/workOrdersRepository.ts - Sync metadata
src/database/repositories/syncMetadataRepository.ts - Realm schemas
src/database/schemas/WorkOrderSchema.ts - Metadata schema
src/database/schemas/SyncMetadataSchema.ts
Synchronization
- Reconnect trigger
src/hooks/work-orders/useSyncOnReconnect.ts - Sync coordinator
src/services/sync/syncWorkOrders.ts - Push local changes
src/services/sync/pushLocalChanges.ts - Remote sync service
src/services/work-orders/workOrdersSyncService.ts
Backend integration
- Order API service
src/services/work-orders/workOrdersService.ts - Work-orders API
Other components
- User
Connections 35
- User → Order list: views orders
README.md - User → Order details: opens details
README.md - User → Manage order screen: manages orders
README.md - Order list → Order state: reads state
src/app/index.tsx - Order details → Fetch order: loads order
src/app/work-order/details/[id].tsx - Order details → Delete order: requests deletion
src/app/work-order/details/[id].tsx - Order details → Create and update: changes order
src/app/work-order/details/[id].tsx - Order details → Detail presentation: renders
src/app/work-order/details/[id].tsx - Order details → Completion display: renders
src/app/work-order/details/[id].tsx - Manage order screen → Order form: renders
src/app/work-order/manage-work-order/index.tsx - Manage order screen → Fetch order: loads edit data
src/app/work-order/manage-work-order/index.tsx - Manage order screen → Create and update: submits
src/app/work-order/manage-work-order/index.tsx - Create and update → Connectivity check: checks status
src/hooks/work-orders/useManageWorkOrder.ts - Create and update → Form validation: validates with
src/hooks/work-orders/useManageWorkOrder.ts - Create and update → Order repository: writes offline
src/hooks/work-orders/useManageWorkOrder.ts - Create and update → Order API service: writes online
src/hooks/work-orders/useManageWorkOrder.ts - Delete order → Connectivity check: checks status
src/hooks/work-orders/useDeleteWorkOrder.ts - Delete order → Order repository: deletes offline
src/hooks/work-orders/useDeleteWorkOrder.ts - Delete order → Order API service: deletes online
src/hooks/work-orders/useDeleteWorkOrder.ts - Fetch order → Order API service: fetches order
src/hooks/work-orders/useGetWorkOrder.ts - Order state → Order repository: reads local data
src/store/workOrderStore.ts - Order state → Order API service: fetches remote data
src/store/workOrderStore.ts - Order repository → Realm database: reads and writes
src/database/repositories/workOrdersRepository.ts - Sync metadata → Realm database: reads and writes
src/database/repositories/syncMetadataRepository.ts - Realm database → Realm schemas: opens with schema
src/database/index.ts - Realm database → Metadata schema: opens with schema
src/database/index.ts - Reconnect trigger → Sync coordinator: triggers sync
src/hooks/work-orders/useSyncOnReconnect.ts - Sync coordinator → Push local changes: pushes changes
src/services/sync/syncWorkOrders.ts - Sync coordinator → Remote sync service: fetches remote changes
src/services/sync/syncWorkOrders.ts - Sync coordinator → Order repository: applies remote data
src/services/sync/syncWorkOrders.ts - Sync coordinator → Sync metadata: tracks last sync
src/services/sync/syncWorkOrders.ts - Push local changes → Order API service: sends local changes
src/services/sync/pushLocalChanges.ts - Remote sync service → Work-orders API: syncs orders
README.md - Order API service → Work-orders API: sends and fetches orders
src/services/work-orders/workOrdersService.ts - Order types → Order repository: types records
src/database/repositories/workOrdersRepository.ts