hellowin / kanca

Facebook Group Analytics
https://hellowin.github.io/kanca/
MIT License
33 stars 12 forks source link

Change storage mechanism #151

Closed hellowin closed 7 years ago

hellowin commented 7 years ago

Currently we use local storage as browser storage engine, but it have very limited capacity especially on mobile devices and also it doesn't have indexing mechanism (second priority).

Some alternatives:

reyhansofian commented 7 years ago

let's give RxDB a try 😄 This one makes me amazed

MultiWindow/Tab When two instances of RxDB use the same storage-engine, their state and action-stream will be broadcasted. This means with two browser-windows the change of window #1 will automatically affect window #2. This works completely serverless.

hellowin commented 7 years ago

@reyhansofian yeah, I'll use that. Wait until I jump to this project again, still on other project right now 😛

hellowin commented 7 years ago

Marked as bug, since it breaks Kanca's functionality on large groups, like more than 10k members.

hellowin commented 7 years ago

WebSQL compatibility is so low on global browsers, reference image

IndexedDB have better compatibility, reference image

But IndexedDB is so buggy on Apple's browsers. So I'll use FruitDown for better compatibility. Which is supported by PouchDB and can be used within RxDB, https://www.npmjs.com/package/pouchdb-adapter-fruitdown