Video summary
Your web app but good: Aaron Boodman (Local-First Conf)
Main summary
Key takeaways
Summary
Aaron Boodman argues that sync engines can make web apps more responsive and simpler to build, but they have not become widespread because apps often cannot sync all their data—and choosing what to sync is difficult.
Benefits of sync
- Interfaces respond immediately to user actions.
- Updates appear reactively for other users.
- Developers can avoid much of the data-fetching and state-management complexity of API-based apps.
The scaling problem
Syncing everything can be impractical. Vercel’s PR-commenting feature worked well enough that some PRs accumulated thousands of comments, affecting page loads. When the feature was expanded to public Next.js documentation, its original data-partitioning approach no longer fit the larger audience and longer-lived content.
Why partial sync is hard
A GitHub issues page may need filters and search across an entire repository. The Kubernetes repository discussed has roughly 45,000 issues, totaling about 200 MB. Syncing all of that is excessive for a casual visitor, but syncing only a subset can make filters and search across the full dataset incomplete.
Boodman frames sync as a caching problem: more data carries a cost, and not all data is equally valuable.
Proposed approach: Zero
Rocicorp is developing Zero, a query-driven system intended to manage what data is available locally.
- Developers express the data their UI needs using SQL queries, including joins, aggregates, and subqueries, rather than manually defining sync partitions.
- Zero runs queries against a local cache first and requests additional results from the server asynchronously. Boodman describes this as hybrid search.
- The goal is for about 99% of interactions to be immediate, while the remaining cases retrieve results from the server. This allows the system to work with datasets larger than what is practical to store on a device.
- Because it is reactive, Zero also updates the UI when data changes. Boodman says this can simplify app structure: components query and render data, handle events, and write changes back to the data model.
Demo and development plans
Boodman demonstrates an issue-tracking app containing a one-gigabyte dataset: more than 200,000 issues and two million comments. The client has only about 25 MB locally. Sorting and common queries appear immediate; less common searches show a loading indicator while server results arrive. He also demonstrates fast initial loading and describes how the same query model could support server-side rendering.
At the time of the talk, Rocicorp said Zero was under development, with an open project planned and a beta targeted for the end of the year. The company also planned to open-source and continue supporting Replicache and Reflect.
Reviews, guides, or tutorials
None. The talk includes a product demonstration rather than a review or step-by-step tutorial.
Main speaker and source
Aaron Boodman, CEO of Rocicorp, presenting at Local-First Conf.
Rate this summary
Your feedback will help improve summaries.
Improve this summary
Reprocess with a stronger model when the summary feels incomplete or inaccurate.
Translate summary in another language
Ask questions to this video
Chat for follow-up questions, clarifications, and source-backed answers.