From 06d0fa5e05e6e350da782dc3b3e8fb1499522864 Mon Sep 17 00:00:00 2001 From: Florian Schroedl Date: Thu, 16 Apr 2026 19:09:08 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20instant=20sync=20=E2=80=94=20push=20on?= =?UTF-8?q?=20write,=20pull=20on=20reconnect,=20render=20from=20cache?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add kick-ch to SyncedAtom: swap!/reset! trigger immediate push instead of waiting for the 15s sync loop interval - SSE: pull on reconnect ("connected" message), not just on new events, so coming back online picks up missed server changes - TodoMVC: render and bind events before IDB load completes; the watch re-renders automatically when cached data arrives --- example/todomvc/pocketbook/todomvc.cljs | 10 ++++------ src/pocketbook/core.cljs | 22 ++++++++++++++++------ src/pocketbook/sync.cljs | 6 +++--- 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/example/todomvc/pocketbook/todomvc.cljs b/example/todomvc/pocketbook/todomvc.cljs index 6a48eee..aa240e2 100644 --- a/example/todomvc/pocketbook/todomvc.cljs +++ b/example/todomvc/pocketbook/todomvc.cljs @@ -247,18 +247,16 @@ :interval 15000})] (reset! !conn conn) (reset! !todos todos) - ;; Wait for IDB load - (