Local-first software: You own your data, in spite of the cloud (2019)
As someone who very closely watches this CRDT and local-first space, it's really quite a bit harder than doing it the old fashioned client-server-model way, because you have to architect your systems to sync seamlessly when offline and then online. I've used tRPC and GraphQL before and I've really been thinking of something where we'd have the same DX as the client-server model such as with tRPC and GraphQL but in a way where there is no difference between client and server state, there is only "state." This makes sense because for local-first, the entire state of the app must be replicated locally anyway.Recently there have been CRDT solutions that try to solve this problem, however, such as Triplit [0], or ElectricSQL [1].[0] https://triplit.dev[1] https://news.ycombinator.com/item?id=37584049