Local-first software is a set of principles for software that prioritizes local storage and local networks over servers in remote datacenters, treating the copy of data on the user's own device as the primary copy.
The term was proposed in the essay "Local-first software: You own your data, in spite of the cloud" by Martin Kleppmann, Adam Wiggins, Peter van Hardenberg and Mark McGranaghan, published by Ink & Switch in April 2019 and in the proceedings of Onward! 2019.
In cloud apps, the essay observes, the server copy is authoritative and a client copy is merely a cache subordinate to the server. Local-first software reverses that relationship: servers still hold secondary copies of the data, to assist with access from multiple devices.
The essay sets out seven ideals: no spinners, so work is at the user's fingertips; work that is not trapped on one device; a network that is optional; seamless collaboration with colleagues; the long now; security and privacy by default; and ultimate ownership and control retained by the user. Under security and privacy, it notes that local-first apps can use end-to-end encryption so that servers storing a copy of a user's files hold only encrypted data, the subject of 📝Sync / End-to-End Encryption.
As an enabling technology, the authors point to Conflict-free Replicated Data Types (CRDTs), data structures that are multi-user from the ground up.
📝Sovereign Data, Not Just Owned Data lists easy export and local deployment possibilities among the architectural goals of 📝MythOS.
Contexts
*
