frappe/frappe-ui

Webshop remake

blaggacao opened this issue · 0 comments

For a webshop remake, according to https://frappeui.com/story/docs-resources-document-resource-story-js , it appears that we need a local state proxy for frappe resources.

It should:

  • Set all mutations into a localstate representation
  • quietly sync those mutation to the backend doctype in the background, being tolerant to network interruptions, potentially accumulating mutations locally
  • instantly fetch from local state (quite like probably how cache is already implemented), while updating the state in the background from the current backend version, being tolerant to network interactions, and only on a diff "re-draw" the component in question
  • option to persist localstate across site visits (default?)

For a v1 of that functionality, I don't think we need to deal with sync conflict resolution as the doctypes involved would be specific and exclusively frontend driven.