If PWAs would get their own permanent storage like other apps, it would be a huge step forward.
If PWAs would get their own permanent storage like other apps, it would be a huge step forward.
One of the issues is that storage in a PWA is done via localStorage or IndexedDB... both of which aren't really available outside of the browser.
Also, part of the benefit of a PWA is being able to be in mobile devices and 'storage' there is different than on the desktop.
PWAs usually store client-side data as a kind of cache: cookies, local storage, service worker cache. Caches are not meant to be permanent.
There may be room for improvement here, however. One might imagine that clearing browser data shouldn't clear data for installed PWAs. That's an argument worth further evaluation.
"Why did all my data get deleted? How can I get it back?"
and
"Why is it saying the browser won't let me store more data?"
The user's desires are pretty clear in both cases, but it's very unclear how the user can get what they want.
Not being able to reliably store data on the device means that PWAs have to send the users data over the internet and store it on an external server. I would think users rather do not like that.
I am only talking about installed PWAs here. Of course not every website should be able to avoid having its cookies deleted.
Installed PWAs is another question. I suspect users will be surprised if they clear their browsing data only to discover they have to login again to Twitter, for example.
I may raise this question to the Edge Chromium team. I'm certain it's been raised before, but with Microsoft making PWAs first-class on Windows[0], this becomes a more prominent issue.
[0]: https://www.windowscentral.com/heres-how-microsoft-making-ed...
The problem is the data. Imagine a text editor where all your text documents are gone after you cleared the data of a different app, the browser.
I wrote a fitness app as a PWA some time ago and its pretty annoying to download all the instruction videos again every time you clear your "browser data". Plus all infos about which exercises you did and when is gone for good of course.
One way to address that issue is the native file system access APIs[0] coming soon, available today in Chrome Canary and Edge Canary. There, you'd be able to save your documents to the user's file system, just like a native app would. Those files will be exempt from any browser data clearing.
> all infos about which exercises you did and when is gone for good of course.
Might be good to store that data on the server. I realize not all PWAs have a proper backend server, but that sounds like a good candidate.
[0]: https://bugs.chromium.org/p/chromium/issues/detail?id=853326
Great, so there is light at the end of the tunnel!
> store that data on the server
Well, we talked about that already:
Come on, stop giving people false hope, that API is like 3rd incarnation of the same thing by Google, always shot down by Mozilla and Apple. Even today if you restrict yourself to Chrome your PWA can use the older version of the same thing, but what's the point if that works only in Chrome?
Persistent storage can help protect
critical data from eviction, and
educe the chance of data loss.
Are you sure this keeps the data when the user deletes their browser data? To me it sounds like it does not: Persistent storage is not deleted by the browser,
even if storage is running low. It will only be
deleted if the user chooses to remove it via
their site settings.What could possibly go wrong with that?
i mostly agree, but the user experience isn't there yet. browsers make it easy to delete all data, but don't have any workflows that encourage deleting the data from only a single app. at this point, it seems less about empowering users to have control over their own data and more like browsers just don't care about PWA data.
I see from the link that Chrome is already doing an "origin trial" even if the spec itself isn't complete. So, why would it be "released more broadly". Or is it the Constructible Stylesheets again? When both Safari and Mozilla said "no", but Chrome released them anyway?
The same crowd that now complains about Google, was worshipping Chrome, talking about how its its developer tools are, the multiprocess architecture, handling hundreds of open tabs (still to understand this one),.....
So if the Web is turning into ChromeOS, they only have themselves to thank for.
kinlan is referring to this web API[0], which allows a PWA to store data persistently.