Poor network connectivity can lead to frustrations when uploading files online, requiring constant monitoring and retries.Building an offline-friendly image upload system can significantly enhance user experience in such situations.The system involves using PWA technologies like IndexedDB, service workers, and the Background Sync API.Users select an image which is then stored locally in IndexedDB if a stable network connection is not available.The service worker detects when the network is restored and initiates the upload process automatically.Implementing the system involves allowing image selection, registering the service worker, and checking network connectivity.Sync events are registered to handle pending uploads, and the background sync process takes care of uploading images.Images are stored in IndexedDB asynchronously to prevent blocking the main JavaScript thread.Retrieving and uploading images from IndexedDB is managed by the service worker once the network connection is stable.Considerations include addressing limitations such as unreliable internet connectivity detection and browser support.