Go to file
Krzysztof kuhy Rudnicki 085287861c Auto-sync on launch and on app background
Manual sync left a large window in which local edits had not reached
the remote, and a reinstalled device only recovered after a manual
sync. Make sync automatic so the GitHub repo (the durable store) stays
near-current and recovery is near-automatic.

- Pull on launch (once settings load) so a reinstalled device pulls its
  old changeset back without user action.
- Push when the app is backgrounded (AppLifecycleState.paused) so edits
  leave the device promptly. Lifecycle-based, not per-keystroke, to keep
  CPU/battery and GitHub API usage low.
- Best-effort: silent, skips when unconfigured, single-flight guard so a
  launch sync and a background sync never overlap; failures are swallowed
  (the manual Sync button still surfaces errors).

100% line coverage maintained.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-15 22:02:39 +02:00
android Initial commit: offline-first CRDT notes app (capture + GitHub sync) 2026-06-14 14:20:19 +02:00
docs Initial commit: offline-first CRDT notes app (capture + GitHub sync) 2026-06-14 14:20:19 +02:00
lib Auto-sync on launch and on app background 2026-06-15 22:02:39 +02:00
linux Add list filters/sort, status, priority rework, export/import, structured template 2026-06-15 16:52:59 +02:00
test Auto-sync on launch and on app background 2026-06-15 22:02:39 +02:00
tool Add list filters/sort, status, priority rework, export/import, structured template 2026-06-15 16:52:59 +02:00
.gitignore Add list filters/sort, status, priority rework, export/import, structured template 2026-06-15 16:52:59 +02:00
.metadata Initial commit: offline-first CRDT notes app (capture + GitHub sync) 2026-06-14 14:20:19 +02:00
analysis_options.yaml Initial commit: offline-first CRDT notes app (capture + GitHub sync) 2026-06-14 14:20:19 +02:00
CLAUDE.md Add CLAUDE.md with architecture, commands, git workflow, and testing patterns 2026-06-15 17:13:24 +02:00
LICENSE Add MIT license 2026-06-14 14:42:45 +02:00
pubspec.lock Add list filters/sort, status, priority rework, export/import, structured template 2026-06-15 16:52:59 +02:00
pubspec.yaml Add list filters/sort, status, priority rework, export/import, structured template 2026-06-15 16:52:59 +02:00
README.md Initial commit: offline-first CRDT notes app (capture + GitHub sync) 2026-06-14 14:20:19 +02:00

todo

A new Flutter project.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.