A premium, enterprise-grade mobile application designed for Exotex to manage product warranties, field services, and supply chain logistics. Built with React Native (Expo) and powered by Supabase.
- Digital Registration: Seamlessly register new product sales with high-resolution image attachments.
- QR Verification: Automatically generate and verify product warranty cards via unique QR codes.
- Sub-Branch Approval: Advanced workflow allowing sub-branches to manually approve pending warranties for immediate generation.
- Field Visit Documentation: Specialized forms for Residential and Industrial site visits.
- Complaint Lifecycle: Track customer complaints from initial submission through technician assignment to final resolution.
- Service Reports: Auto-generate professional PDF service reports directly from the field.
- Stock Management: Real-time inventory tracking with automated stock deduction upon sales.
- Multi-Branch Filtering: Regional and branch-based data isolation for Super Admins and Branch Managers.
- Quotation Builder: Professional quotation generation for spare parts and services.
- Zero Data Loss Guarantee: All forms (Warranties, Complaints, Visits, Quotations) are instantly saved to a persistent Local Sync Queue (
AsyncStorage) before Supabase transmission. - Optimistic Dashboard: Sub-Branch dashboards merge live server data with local pending operations, showing users their work immediately even with no internet.
- Intelligent Background Sync: Auto-detects network restoration via
NetInfoandAppStatelisteners to silently process the queue in the background. - Exponential Backoff: Robust retry logic (
2^retryCountminutes) prevents server spamming while ensuring eventual data delivery. - Global Sync Status UI:
- Offline Entry Interceptor: Modal popups warn users of slow/no internet while confirming data is safe.
- Sync Progress Banner: Real-time visibility of pending, syncing, and failed operations at the top of every screen.
- Manual Queue Manager: Dedicated interface to retry, inspect, or discard failed operations individually.
- iPad Optimized: Fully responsive layouts tailored for both handheld mobile devices and technician tablets.
- Rich Interaction: Integrated haptic feedback and custom sound effects for professional feedback.
- EAS Insights: Real-time monitoring of app performance, reach, and user engagement.
- Frontend: React Native (Expo SDK 54)
- Backend: Supabase (PostgreSQL, Auth, Storage)
- State Management: Zustand (Global Sync Store), Context API
- Offline Engine: Custom
SyncServicewith background task orchestration - Storage:
@react-native-async-storage/async-storage, Expo Secure Store - PDF Engine:
expo-printwith custom HTML templates - Release Pipeline: EAS (Expo Application Services) with deterministic
package-lock.jsonbuilds.
git clone https://github.com/your-repo/Warranty_manage_app.git
cd Warranty_manage_app
npm installCreate a .env file in the root directory:
EXPO_PUBLIC_SUPABASE_URL=your_project_url
EXPO_PUBLIC_SUPABASE_ANON_KEY=your_anon_keynpx expo startThe project uses EAS for production-grade Android builds:
eas build -p android --profile productionTo push non-native updates instantly to users:
eas update --autoThis application implements strict Row Level Security (RLS) in Supabase to ensure data privacy between different organizational branches. All mission-critical data requires authenticated access, while complaint submissions are available publicly to facilitate customer feedback.
To comply with Google Play's strict policies for Android 14 (Target SDK 34), this project implements:
- Permission Stripping: Uses
expo-build-propertiesto explicitly blockFOREGROUND_SERVICEand its subtypes (DATA_SYNC,MEDIA_PLAYBACK) from the production manifest. This prevents generic rejections for apps that do not require persistent background notifications for core functionality. - Optimized Sound Management: Standardized notification sounds to occur within the app lifecycle, removing the need for privileged background audio permissions.
- FIX: Resolved Google Play Console rejections regarding Foreground Service Permissions.
- Added:
expo-build-propertiesintegration to manage manifest permissions. - Refinement: Audited
SoundManagerfor safe, crash-free foreground-only execution.
Developed for Exotex by Apurv