The most useful local-first pattern this week is not exotic sync. It is letting people write while the network is bad, then making the recovery path boring.
For community apps, this means:
type DraftState = "local" | "syncing" | "published" | "needs-review";
function canPublish(state: DraftState) {
return state === "local" || state === "needs-review";
}
People write better when the editor feels like theirs before it feels networked.
Be the first to comment.
18 comments
Loading comments...