theanzelm
Joined 15 years ago
Joined 15 years ago
There are some edge cases where you might loose easy access to some data if two clients migrate concurrently, but we’re hoping to provide patterns to mitigate these
Edit: Right now it all depends on you to implement migrations “the right way” but we hope to provide guardrails soon
Let me know if you'd like to know anything else.
I was planning to add a second main server in the US that would also receive everything but will think about how to keep data separate for users/companies that need that.
In any case all the data is end-to-end encrypted, but I guess some of the metadata that is stored could still be considered sensitive for your scenario.
In the web world, this is starting to be known as "local-first"
npx jazz-run sync
Jazz is a framework for building apps around locally mutable collaborative values which are granularly synced (you don't have to worry about data transport or coordinating sync between collaborators, you just set permissions and edit data)
But because the schemas are runtime constructs as well, we might be able to do more complex stuff in the future. Basically any rule you can express as a function of (previous history, new transaction) -> is new transaction valid? can be a rule in theory, and each client will verify it in an eventually consistent way.
For the time being, the Group abstraction with it's reader, writer and admin roles, plus composition of CoValues in different groups is sufficient for most permission-like rules, which is what most apps need most of the time.
Let me know if that makes sense
Also you can use it as blog storage as well
[ my public key: https://keybase.io/aeickhoff; my proof: https://keybase.io/aeickhoff/sigs/-pH5bKDlV0Q1gP7W2jcREjXVN-X1F0gAkOnAKTbNUf4 ]