Skip to content

Instantly share code, notes, and snippets.

@HerbCaudill
Last active February 2, 2024 16:57
Show Gist options
  • Save HerbCaudill/1566f8f88f0d80bb17fac7974029e926 to your computer and use it in GitHub Desktop.
Save HerbCaudill/1566f8f88f0d80bb17fac7974029e926 to your computer and use it in GitHub Desktop.
Resources for getting started with local-first software development

Local-first resources

Background

Getting started

  • Automerge is a JSON CRDT — a data structure that makes it possible to keep replicas of your data in sync without a manual conflict-resolution step. To get familiar with it, I'd suggest writing some simple tests to show how it handles different kinds of merge scenarios.
  • Automerge Repo is a "batteries-included" wrapper that adds support for a collection of Automerge documents, and provides pluggable networking and storage. It's worth going through the quickstart, in which you build the simplest possible local-first application — a counter that's kept in sync between two browsers. I'd then suggest building a simple application on top of that — a chat app, or a recipe app, or something — using the React Todo demo as a reference.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment