Poll sync cheaply and make the server deployable

Polling re-downloaded the whole store, photos included, every five
seconds. The app now checks a tiny version endpoint and only fetches the
payload when it actually moved, and the server gained request logging,
graceful shutdown, and self-hosting docs so it can run on a VPS instead
of only on localhost.

💘 Generated with Crush

Assisted-by: Crush:kimi-k3
This commit is contained in:
2026-10-08 10:19:55 +08:00
parent 88780f7701
commit f3e6fc8fa6
6 changed files with 189 additions and 10 deletions
+4 -2
View File
@@ -66,9 +66,11 @@ Notes:
- Both Macs must be able to reach the server. A LAN address or a Tailscale
hostname works; `localhost` only works if the server runs on the same Mac.
See [Server/README.md](Server/README.md) to deploy it on a VPS or home server.
- Joining a group that already has notes replaces what's on that Mac.
- The app polls every 5 seconds and pushes 1.5s after a change; last write
wins. Changes that came from the server are not echoed back.
- The app polls every 5 seconds (a tiny version check) and pushes 1.5s after a
change; last write wins, and changes that came from the server are not echoed
back.
- Verify sync from a terminal with `Prompt --sync-check`.
## Build from source