Adds possibility to store binary data without a step for parsing/stringifying data. This could improve performance.
Might make it quicker to update and delete reflection entries in the middle of the app state.
By making it possible to store binary data, it would be possible to encrypt data at rest, and require password prompt when starting the app. Might be good to improve security, since we have to assume local data on the device (like localStorage or even IndexedDB) can be read by other apps on the device. With localStorage it's also possible to encrypt data at rest, but it's primarily with IDG that this will give better opportunities to store any binary data.
Reasons against
Slightly more complex implementation to understand and maintain.
More code needed in the client bundle.
Might not be worth it for our simple app.
Ways forward
If we want to explore this further, here are some potential wrappers around the IndexedDB API to wrap common operations in Promises:
Potential benefits
Reasons against
Ways forward
If we want to explore this further, here are some potential wrappers around the IndexedDB API to wrap common operations in Promises:
key: value
storage: https://www.npmjs.com/package/idb-keyval