I have an hybrid app written in ionic 3. We have users on web and ios and supports offline (ios only) using SQLite as a storage extension. SQLite stores around 500MB of relational data on an average for my use case. As part of modernising the app I was thinking of making it a PWA and stumbled upon the fact that we can't use SQLite with PWA which might cause few issues.
Storing Relational Data for offline: Available solutions like IndexedDB are non relational (I'm not sure why they are called structured and NoSQL at the same time). This seems like a huge problem, especially for an existing app which have offline features. If my understanding above is correct, I will require to modify all the sql queries and do something crazy as mentioned in this post to make it work. Is it still the case in 2020? Is there an easier migration path that I could adopt?
Storage limit for offline: There is confusing discussions on the limit of data that i can store in client side while a page is saved to the home-screen v/s while it's on web. I read pouch db faq and mozilla article which also tries explainig on the limits, but I'm still not sure what the limits are? What is real limit on storage for offline if I can force the user to save the PWA to home-screen on ios? What alternatives do I have for feeding 500MB offline data to my PWA given that I can can restrict browsers, and ask user to do special setup(if required)?
NOTE: I want to keep it as pure PWA. So can't wrap it into an app and deploy.