Simply put: your state exists on each client and the mechanism to reconcile that state across clients is not mission critical. Almost all apps currently are built to get their state from a centralized, remote location. This is easy to build but is fragile and not forgiving for loss of network connection.
CRDTs and local-first ideals means putting the client in charge of its state which leads to all these positive side effects: virtually instant UX interactions, privacy (your not sending data necessarily to a central server, and even if you are it could just be opaque, encrypted blobs that are proxied), network-agnostic syncing (email, bluetooth, internet, wifi, etc) and no fears of a service completely going out of business and losing your data.
Still curious if theres a side of this idea thats about local first software in a more regional or niche demographic sense. Like instagram but just for Oakland, or GrubHub but just for Austin. Im sure there are infinite problems associated with that sort of idea but still curious if theres some movement / push for that as well as this state-related stuff.
There’s geographical locality e.g. apps like ChatRadar[0] that show information from nearby.
And then there’s data-locality e.g. is the data stored on your device or does it all ultimately live on a server somewhere that’s the authoritative source of truth.
CRDTs and local-first ideals means putting the client in charge of its state which leads to all these positive side effects: virtually instant UX interactions, privacy (your not sending data necessarily to a central server, and even if you are it could just be opaque, encrypted blobs that are proxied), network-agnostic syncing (email, bluetooth, internet, wifi, etc) and no fears of a service completely going out of business and losing your data.