Using client-side storage, today.
hacks.mozilla.org
hacks.mozilla.org
Hopefully in 15 years, IndexedDB (or its grandchild), which is what Mozilla supports, will have some penetration.
All because a bunch of people had a seriously bad case of NIH and decided they wanted to build a poorly performing KV store, because hey, there's not enough of those out there.
And now, web developers have to maintain to separate code paths, one for WebSQL and one for IndexedDB. Let's not mention that the IndexedDB-using code is about 10x as long because why not make everyone reinvent joins in code, and while we're at it, let everyone come up with novel concepts such as indexes, and I don't know, maybe a query language of some sort so we don't have to write the same stuff over and over again.
Sigh...