A Synchronization Engine for Everyone
(greenvitriol.com)
I love storing user data on the client. It helps with privacy, data ownership (which prevents enshittification), and allows users to run mundane computations (like indexing) on their devices instead of sharing a sliver of a server's CPU time. Also, if the backend fails, UX degrades like an escalator, not an elevator: users temporarily lose the ability to run server-side computations on their data but still retain access. This is the basis of local-first software, as defined by Ink & Switch.
I love storing user data on the client. It helps with privacy, data ownership (which prevents enshittification), and allows users to run mundane computations (like indexing) on their devices instead of sharing a sliver of a server's CPU time. Also, if the backend fails, UX degrades like an escalator, not an elevator: users temporarily lose the ability to run server-side computations on their data but still retain access. This is the basis of local-first software, as defined by Ink & Switch.