Research Foundation

Local-First Computing

Software that keeps data on the user's device, works without cloud dependency, and prioritises ownership and control over centralised convenience.

Overview

The cloud era has drifted toward a model in which user data lives on remote servers and software cannot function without network access. Local-first computing is a principled response: software should work fully offline, store data locally, and treat the local device as primary.

Local-first computing is a software design philosophy that treats the local device as primary: software should work fully offline, store data locally, and not depend on remote servers for core functionality, while still enabling collaboration and synchronisation when connectivity is available. It is a direct response to the architectural drift of the cloud era, in which user data increasingly resides on servers controlled by service providers, creating fragility (service outages render software unusable), dependency (switching costs are prohibitive because data is locked in), and loss of ownership (when a service closes, data may be inaccessible or lost entirely).

The defining text is Kleppmann, Wiggins, van Hardenberg and McGranaghan's 2019 paper "Local-first Software: You Own Your Data, in Spite of the Cloud", published in Onward!. The paper articulates seven ideals: (1) no spinners — instant responsiveness without network delay; (2) your work is not trapped in the cloud; (3) the network is optional; (4) seamless collaboration when connected; (5) the long now — data outlasts any given service and remains readable indefinitely; (6) security and privacy by default; (7) you retain ultimate ownership. The paper demonstrates that achieving these ideals simultaneously requires addressing a hard technical problem: how do you synchronise data across devices without a central server arbitrating conflicts?

The technical foundation enabling local-first software is CRDTs — Conflict-free Replicated Data Types — data structures that support concurrent editing across multiple devices without a central server by ensuring all replicas eventually converge to the same state, regardless of the order in which operations arrive. Marc Shapiro et al.'s 2011 paper formally characterised CRDTs and established their convergence properties. Martin Kleppmann's Designing Data-Intensive Applications (2017) situates them in the broader landscape of distributed systems — eventual consistency, partition tolerance, and the CAP theorem — providing the engineering context for understanding the tradeoffs in local-first architecture. The Ink & Switch research lab, which produced the original paper, has continued developing the ecosystem with open-source CRDT implementations (Automerge, Peritext) and ongoing research into collaborative local-first software patterns.

Local-first computing is not merely a technical preference — it is a political stance about the appropriate relationship between users and the software they depend on. The idealised cloud model — always-on, always-synced, always-accessible — obscures a power relationship in which service providers hold user data and can modify access terms, revoke access, or discontinue the service. Local-first software restores leverage to the user.

LOCAL-FIRST ARCHITECTURE Device A data lives here CRDT SYNC Device B data lives here Cloud relay OPTIONAL devices are primary · software works fully offline · data outlasts any service

Key Texts

Foundational works in this research tradition.

Kleppmann, Wiggins, van Hardenberg & McGranaghan · 2019 · Onward! (SPLASH)
Local-first Software: You Own Your Data, in Spite of the Cloud

The defining paper: seven ideals for local-first software; CRDTs as the enabling technology; evaluation of current collaborative tools against those ideals. The intellectual foundation of the local-first movement — and a clear argument for why cloud-first architecture transfers power from users to service providers.

Shapiro, Preguiça, Baquero & Zawirski · 2011 · SSS
Conflict-free Replicated Data Types

The formal characterisation of CRDTs: data structures that support concurrent distributed editing and provably converge to the same state across all replicas, regardless of operation order. The technical foundation that makes local-first collaboration without a central server mathematically possible.

Kleppmann · 2017 · O'Reilly Media
Designing Data-Intensive Applications: The Big Ideas behind Reliable, Scalable, and Maintainable Systems

The engineering foundations: replication, consistency models, distributed systems tradeoffs, and the CAP theorem. The context for understanding local-first architecture at scale — and why the standard cloud-first approach involves architectural choices that sacrifice user ownership for operational convenience.

Ink & Switch · 2019– · Research Blog
Automerge, Peritext, and Local-First Research

Open-source CRDT implementations and ongoing research into local-first software patterns from the lab that authored the defining paper. Automerge provides a JSON-like CRDT for collaborative applications; Peritext extends CRDT semantics to rich text. The practical ecosystem enabling local-first development.

Related Research

Connected areas of inquiry.