local-first software
owning state on the device, syncing on the owner's terms.
every product here starts from the same bet: the app should be complete on one machine, and the network should be an enhancement rather than a requirement. sync is opt-in, encrypted, and reconcilable.
these notes cover the state models, content addressing, and quota discipline that make local-first practical — and the honest places where it still costs you.
projects
- sound.fish — an indexeddb music library with optional encrypted suite sync.
- peopleblade — a contact book that enriches only with evidence you can inspect.
- sponge — research notes that live locally and connect by backlink.
- lifecharts — a daily chart generated entirely on your machine.
planned lessons
- state models where invalid states cannot exist
- content-addressed documents and stable identity
- encrypted sync with hard quotas and clean recovery
- when local-first is the wrong call
these lessons are planned, not published. each ships as a page under this category when it is written.
AI-drafted at Ben Guo's direct request as category seeds; each planned lesson is unpublished until it is written.