useState and useReducer solve local problems. But when state needs to sync across tabs, persist to disk, and replicate to a server, you need something else. We'll build a collaborative React app using a local-first sync engine and explore the tradeoffs.
Local-first with React is the future. The sync demo was seamless.
How does conflict resolution work with concurrent edits?