Skip to content

Saving & Recovery

Saving

Action Shortcut
Save Cmd+S / Ctrl+S
Save As… Cmd+Shift+S / Ctrl+Shift+S

File names

Save dialogs suggest a versioned name, following SLEAP's convention:

  • The first save of a new project suggests labels.v001.slp.
  • Save As… suggests the next version of the current name: labels.v001.slp → labels.v002.slp. A name with no version number gets one: experiment.slp → experiment.v001.slp.
  • Save on a project that already has a file writes to that same name — it never bumps the version.

You can always type a different name.

Where it writes

What Save does depends on where you're running:

Save writes back to the project's path on disk, like any native app. Save As… opens a native file dialog.

File ▸ Reveal Project in File Manager shows the file in Finder / Explorer / your file manager.

If you opened the file through the file picker, the page holds a writable handle to it and Save writes back to that same file in place. If you opened it by drag-and-drop — which yields no handle — Save falls back to a Save-As prompt. Save As… always prompts, and later saves go to the file you picked.

The browser will ask for permission the first time it writes.

These browsers can't write to a file on disk, so Save and Save As… both download a new copy of the .slp to your downloads folder. The file you opened is not changed.

Because the app can't tell whether the download landed, it keeps its crash-recovery draft after a save here.

Large embedded packages

A .pkg.slp with a lot of embedded image data can exceed what fits in memory at once. The desktop app detects this and switches to a streaming writer that copies image blobs disk-to-disk rather than materializing the whole file, so size is not a wall. It is slower over a network share, so saving a very large package to a mounted drive takes a while.

Crash recovery

The app keeps a draft of unsaved work in the background — a debounced, imageless snapshot written a beat after you stop editing. No toast, no dialog, no memory cost for pixels.

  • Browser — drafts go to the origin private file system (OPFS). Every browser project gets one, because browser tabs die.
  • Desktop — drafts go to an app-local data directory.

If the app stops with unsaved work, the next launch shows a Restore unsaved work? card on the welcome screen listing the recoverable drafts. Recovery is always something you click; it never pops up on its own and never fires twice. Starting a new project or opening another one just leaves the draft alone.

A draft is a net, not a save

On the desktop, a draft write never marks the project clean — the file on disk is still stale until you press Cmd+S. Drafts protect you from crashes, not from forgetting to save.

Unsaved-work guards

The app will not let you quietly lose labels:

  • Closing the window or quitting with unsaved changes prompts first
  • Leaving a skeleton edit half-finished prompts first
  • The installer refuses to replace a running copy of the desktop app

Where preferences live

File ▸ Open Preferences Directory… (desktop) opens the folder holding settings, transcode cache, and drafts. File ▸ Clear Video Transcode Cache… clears cached transcodes from there.