DevLogTechnical writing
Blogs

Local-First Software: The Quiet Rebellion Against the Cloud

October 01, 2026

For a decade, the cloud sold us a good story: my files are always with me, my collaborators are one click away, my computer is disposable. And it mostly delivered. But it also charged a fee we stopped noticing — your data lives on someone else's server, and you can only touch it when the network allows.

A quieter model has been waiting to answer back. It has a name: local-first.

The term comes from a 2019 essay by the Ink & Switch research lab — "Local-first software: You own your data, in spite of the cloud," by Martin Kleppmann, Adam Wiggins, Peter van Hardenberg, and Mark McGranaghan (later published in the ACM's Onward! 2019 proceedings). The piece laid out a simple inversion: keep the primary copy of your data on your own device, and treat the server as a relay rather than a vault. You work first, sync second, and the cloud becomes a convenience instead of a gatekeeper.

That inversion is the whole philosophy. In a fully-cloud app, the server is the source of truth and your local copy is a disposable cache. Local-first flips it: your machine holds the real data, and remote machines hold secondary copies to help you hop between devices. Shut down the service, and unlike a dead cloud app, your work survives.

The hard part was always the technical one. Real-time collaboration and offline editing look contradictory — how do two laptops edit the same document offline and reconcile without a central boss to break the tie? The answer is CRDTs: conflict-free replicated data types. Independent copies can be changed offline and merged automatically, with no conflicts and no central authority. The theory had been around for years, but libraries made it practical. Today, Yjs drives many collaborative editors, and Automerge — JavaScript with a Rust core — is a serious foundation for new apps.

The Rust story is the tell that local-first is growing up. Automerge 2.0, released in January 2023, was a ground-up Rust rewrite of the earlier pure-JavaScript version. On a benchmark trace, it cut document merge memory from roughly 1.1 GB to about 44.5 MB. A roughly twenty-five-fold drop is the kind of number that turns a novelty into a choice engineers make on purpose.

The proof, though, is in shipped software. Obsidian keeps everything in plain Markdown files on your disk. Logseq does the same. And Linear — a tool developers already trust for speed — built its own offline-capable sync engine inspired by CRDT principles. None of these are academic; they're products people pay for because local files load instantly, survive outages, and stay readable decades later.

None of this means the cloud is dead. CRDTs aren't right for everything, and networked services still excel at tasks that genuinely need a central system. The rebellion is quieter than that. It's simply an argument, now backed by tools and shipped products, that "own your data" doesn't have to mean "give up collaboration." For a growing number of developers — and the users who never asked to rent their own files — that trade no longer seems necessary. Local-first isn't the future. It's the correction we're finally equipped to make.

← More Blogs