Documentation
Data Management·

Sync and Consistency

How cloud sync works under a local-first model, how to turn it ON/OFF, how edge cases resolve themselves automatically, and the behavior when conflicts occur.

Sync Assumptions

niyase's desktop / mobile apps are local-first. The SQLite on your device is the single source of truth, and the cloud is positioned as a replica.

  • Not logged in: No sync. Fully local
  • After logging in: Choose sync ON/OFF per space

Turning Sync ON/OFF

Toggle it from Space settings → Sync tab.

  • ON: Edits are automatically reflected to the cloud and become visible on your other devices
  • OFF: Stays local. Data is not uploaded to the cloud

"Log out" and "sync OFF" are different concepts. Even after you log out, local data remains in a "cloud-cached" state.

Checking Sync Status

A sync status icon is always visible, so you can tell at a glance whether your data is synced and backed up to the cloud (the reassurance of the Google Docs model).

  • Desktop: At the top of the utility group at the bottom of the rail (the sidebar on the left), just above the notification bell
  • Mobile: At the top of the utility group in the shelf. Errors and warnings also show as a dot on the shelf button at the left end of the bottom bar

For the full layout of the rail and shelf, see Navigation. Here we only cover what the icon means.

IndicatorState
Cloud iconSynced (normal)
Spinning iconSyncing
Cloud-off iconSync OFF or not logged in
Red dot (top right)An issue on niyase's side (waiting on a server-side fix)
Yellow dot (top right)Something needs your attention (network connection, approaching a usage limit, etc.)

Click it to see the last successful sync time and the number of pending changes, and to run "Sync now" at any time, regardless of the ON/OFF setting.

Resilient by Design in Edge Cases

The sync engine keeps getting more resilient, and the following situations now resolve themselves automatically without any action from you:

  • Leftover data from a plugin you disabled or removed: Sync automatically detects data that is no longer needed, cleans it up, and converges to the correct state. It will not keep failing with the same error over and over
  • Sync gets interrupted right after you close the app or restart it: Sync progress is durably saved, so the next time you open the app, it will not have to start over from scratch

Both of these are handled behind the scenes — there is nothing you need to do.

Behavior on Conflicts

When the same record is edited simultaneously on multiple devices:

  1. Last-write-wins by default, but important fields are protected
  2. All changes remain in the audit log
  3. The UI notifies you that a conflict exists → you can manually merge from the history

What Is Not Included in Sync

  • Device-specific settings (display color, pin order, etc.)
  • Local cache (PDF thumbnails, etc.)
  • Login sessions

Troubleshooting

When sync is not progressing:

  1. Click the sync status icon to view details
  2. Check your network connection
  3. Run "Sync now"
  4. If it still does not resolve, see Troubleshooting