←back to thread

Local-first software (2019)

(www.inkandswitch.com)
863 points gasull | 1 comments | | HN request time: 0.232s | source
Show context
davepeck ◴[] No.44473558[source]
In theory, I love the local-first mode of building. It aligns well with “small tech” philosophy where privacy and data ownership are fundamental.

In practice, it’s hard! You’re effectively responsible for building a sync engine, handling conflict resolution, managing schema migration, etc.

This said, tools for local-first software development seem to have improved in the past couple years. I keep my eye on jazz.tools, electric-sql, and Rocicorp’s Zero. Are there others?

replies(10): >>44473650 #>>44473701 #>>44473707 #>>44473755 #>>44474114 #>>44474213 #>>44474468 #>>44475913 #>>44476540 #>>44491158 #
samwillis ◴[] No.44474468[source]
Along with the others mentioned, it's worth highlighting Yjs. It's an incredible CRDT toolkit that enables many of the realtime and async collaborative editing experience you want from local-first software.

https://yjs.dev/

replies(1): >>44474515 #
1. thorum ◴[] No.44474515[source]
I’ve built several apps on yjs and highly recommend it. My only complaint is that storing user data as a CRDT isn’t great for being able to inspect or query the user data server-side (or outside the application). You have to load all the user’s data into memory via the yjs library before you can work with any part of it. There are major benefits to CRDTs but I don’t think this trade-off is worth it for all projects.