• randy@lemmy.ca
    link
    fedilink
    arrow-up
    14
    ·
    2 days ago

    This is exactly how I use Syncthing, and as the author says, it sure would be nice if more things were just files. Really, most things are stored locally as files, but not always in a way that plays nice with syncing. Like, I can sync my Firefox profile between machines (it’s all in one folder), but I found it prone to conflicts, with little to resolve those conflicts.

    In a similar vein, local-first apps built with Conflict-free replicated data types (CRDTs) can be another way to avoid server dependency. I haven’t seen any significant apps built this way yet (just occasional blog posts about it). I imagine the CRDT approach would work better for individual apps, since conflict resolution can be written in a way that works best for a given app, but I also imagine that such apps would not play nicely with a generic sync solution like Syncthing.

    • patrickA
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 day ago

      I’m working on something that allows for custom CRDTs since I agree no one CRDT strategy is best for any given app. There are several others I know of but they only use a single type. I think Automerge is the most popular current one but I don’t know if it has many actual users.

      Mine is Eidetica, still very much experimental but I’m making progress https://github.com/arcuru/eidetica