Local-first software is a software engineering approach in which an application stores its data primarily on the user's own device rather than on remote servers.[1] Users can read and write data without an Internet connection, and changes are synchronized across devices in the background when connectivity is available.[2] The approach differs from conventional cloud-based applications, where the server holds the authoritative copy of user data and the client acts as a thin client.[1]
The term was coined in a 2019 paper published by researchers at Ink & Switch, an independent research lab, and presented at the Onward! conference at ACM SIGPLAN.[1] The paper, sometimes referred to as a manifesto, was authored by Martin Kleppmann, Adam Wiggins, Peter van Hardenberg, and Mark McGranaghan.[3]
Background
Before the widespread adoption of Internet-connected software in the 2000s, most desktop applications stored data as files on the user's local disk. Users had direct access to their files and could copy, back up, or delete them at will.[1] The rise of software as a service (SaaS) and cloud-based applications like Google Docs shifted data storage to centralized servers. While cloud applications made real-time collaboration across devices straightforward, they introduced a dependency on the service provider: if the provider discontinued the service or experienced an outage, users could lose access to their data.[1][3]
A related concept, "offline-first," emerged in the early 2010s and focused on making web applications resilient to network interruptions. The local-first approach built on these earlier efforts while placing greater emphasis on long-term data ownership and end-to-end encryption.[4]
Origins
Ink & Switch manifesto
Ink & Switch is an industrial research lab co-founded by Adam Wiggins, who had earlier co-founded Heroku.[5] Martin Kleppmann, an associate professor in the Department of Computer Science and Technology at the University of Cambridge, was a co-author of the 2019 paper.[6]
The manifesto proposed seven "ideals" for local-first software:[1]
- Fast — Operations respond without network round-trips.
- Multi-device — Data synchronizes across a user's devices.
- Offline — Users can read and write data without a network connection.
- Collaboration — Multiple users can work on the same data concurrently.
- Longevity — Data remains accessible even if the software vendor ceases operation.
- Privacy — End-to-end encryption protects user data.
- User control — The vendor cannot restrict how users access or use their data.
The paper surveyed existing approaches to data storage and collaboration — ranging from email attachments and Dropbox-style file synchronization to web applications and mobile backends — and argued that none of them satisfied all seven ideals simultaneously.[1]
Role of CRDTs
The manifesto identified conflict-free replicated data types (CRDTs) as a promising technical foundation for local-first applications.[1] CRDTs are data structures that allow multiple replicas to be edited independently and then merged without conflicts, a property first formalized in research by Marc Shapiro and colleagues around 2011.[3] Kleppmann and collaborators at Ink & Switch developed Automerge, an open-source CRDT library for JSON documents, to make these algorithms available to application developers.[3]
Adoption and community
Developer interest in the local-first approach grew after the 2019 paper spread on Hacker News and at developer conferences[2] In August 2023, Wired published a feature article on the movement, describing it as an effort to reduce reliance on large cloud providers.[3]
The first Local-First Conf took place on 30 May 2024 in Berlin, with talks by Kleppmann and developers from companies including Linear and Anytype.[7] The community has continued to expand, with regular "LoFi" meetups, a podcast (localfirst.fm), and a third edition of the conference planned for Berlin in July 2026.[8]
Criticisms and limitations
Developers and commentators have pointed out practical difficulties with the local-first approach.
Synchronizing data between multiple devices that may be offline for extended periods introduces complexity that cloud-based architectures avoid. Conflict resolution, even with CRDTs, can produce results that are technically consistent but semantically unexpected to users.[9] Schema migrations across thousands of client devices running different application versions pose another difficulty that does not arise with server-side databases.[9]
Web browsers impose storage limits and may evict locally stored data. Safari, for instance, has been reported to clear IndexedDB data after seven days of inactivity on a given site, which undermines the assumption that local data is persistent.[9]
There is also disagreement within the local-first community about whether a fully decentralized architecture is required. The original manifesto described decentralization as the "logical end goal," but a number of products that identify as local-first still depend on centralized servers for authentication, backup, or synchronization. In a talk at Local-First Conf 2024, Kleppmann said the seven ideals are better understood as a "gradient" rather than a strict checklist.[4]
See also
- Conflict-free replicated data type
- Peer-to-peer
- Data sovereignty
- End-to-end encryption
- Cloud computing
- Decentralization
- Software as a service
References
- ^ a b c d e f g h Kleppmann, Martin; Wiggins, Adam; van Hardenberg, Peter; McGranaghan, Mark (October 2019). Local-first software: You own your data, in spite of the cloud. 2019 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!). Athens, Greece: ACM. pp. 154–178. doi:10.1145/3359591.3359737.
- ^ a b "What's the Buzz About the Local-First Software Movement?". DevPro Journal. 26 April 2024. Retrieved 16 February 2026.
- ^ a b c d e "The Cloud Is a Prison. Can the Local-First Software Movement Set Us Free?". Wired. 3 August 2023.
- ^ a b "Local-First Software: Origins and Evolution". PowerSync Blog. 2024. Retrieved 16 February 2026.
- ^ "How Local-First Development Is Changing How We Make Software". Heavybit. Retrieved 16 February 2026.
- ^ "Dr. Martin Kleppmann". University of Cambridge Department of Computer Science and Technology. Retrieved 16 February 2026.
- ^ "Local-First Conf 2024". Local-First Conf. Retrieved 16 February 2026.
- ^ "Local-First Conf 2026". Local-First Conf. Retrieved 16 February 2026.
- ^ a b c "Why Local-First Software Is the Future and Its Limitations". RxDB. Retrieved 16 February 2026.
