Auto-Save

Notidian automatically saves your work so you never lose changes.

Overview

Auto-save provides:

  • Instant Saving - Changes save as you work
  • No Manual Save Needed - Focus on your content
  • Workspace Restoration - Resume where you left off
  • Cloud Sync Integration - Automatically backs up saved notes

How It Works

For Notes (.note files)

  1. Trigger - Any change to title, content, or canvas
  2. Debounce - Waits 500ms after last change
  3. Save - Writes to disk immediately
  4. Sync - Queues for cloud backup (if enabled)

For Markdown (.md files)

  1. Trigger - Any text change in edit mode
  2. Debounce - Waits 2 seconds after last change
  3. Save - Updates the markdown file
  4. Indicator - Yellow dot clears when saved

Save Indicators

Look for these visual cues:

IndicatorMeaning
No indicatorDocument is saved
Yellow dot (•)Unsaved changes
SpinningSave in progress
Cloud iconSyncing to cloud

Manual Save

You can still save manually:

  • Keyboard - Cmd+S (Mac) / Ctrl+S (Windows)
  • Button - Click Save in the toolbar

Manual save is useful when:

  • You want immediate confirmation
  • You’re about to close the app
  • Auto-save seems delayed

Workspace Restoration

Notidian remembers your session:

What’s Restored

  • Open tabs and their positions
  • File Explorer navigation state
  • Last viewed note per tab
  • Scroll positions

When It Restores

  • On app launch
  • After browser refresh
  • When reopening a workspace

Storage

Restoration data is stored in:

  • IndexedDB (primary)
  • localStorage (fallback)

Cloud Sync Integration

When cloud sync is enabled:

  1. Local Save - Note saves to disk
  2. Queue - Added to upload queue
  3. Debounce - Waits 5 seconds for more changes
  4. Upload - Syncs to cloud provider

This means:

  • Local saves are instant
  • Cloud syncs are batched for efficiency
  • You can work offline without issues

Performance

Auto-save is optimized for performance:

Debouncing

  • Multiple rapid changes = single save
  • Prevents excessive disk writes
  • Reduces cloud sync traffic

Incremental Updates

  • Only changed data is written
  • Canvas strokes save incrementally
  • Metadata updates are lightweight

Background Processing

  • Saves happen in background
  • No UI blocking
  • Canvas remains responsive

Configuration

Currently, auto-save settings are not configurable. Future options may include:

  • Disable auto-save
  • Adjust debounce timing
  • Configure sync triggers

Troubleshooting

Changes Not Saving

  1. Check indicator - Look for yellow dot
  2. Try manual save - Press Cmd+S
  3. Check permissions - Ensure workspace is writable
  4. Check disk space - Ensure storage available

Slow Saves

  • Large notes with many strokes take longer
  • Heavy media content increases save time
  • Cloud sync adds additional time

Data Not Restored

  • Check if IndexedDB is enabled
  • Clear browser cache may reset restoration
  • Try refreshing the page

Sync Not Triggering

  • Verify cloud sync is enabled
  • Check you’re signed in
  • Look at sync status indicator

Best Practices

  1. Trust the system - Auto-save is reliable, don’t over-save
  2. Watch indicators - Glance at save status before closing
  3. Enable cloud sync - For automatic backup
  4. Check sync status - Before switching devices

Technical Details

Storage Locations

DataLocation
Note contentWorkspace folder (file system)
Session stateIndexedDB
PreferenceslocalStorage
Cloud backupGoogle Drive / configured provider

File Events

Auto-save triggers on:

  • input events (text changes)
  • Canvas stroke completion
  • Metadata updates (title, tags)
  • Media additions

Error Handling

If a save fails:

  1. Error is logged to console
  2. Retry is attempted
  3. User is notified (for repeated failures)
  4. Data remains in memory until successful save